如何使用链接而不是浏览按钮来附加文件?

时间:2009-08-03 19:44:39

标签: javascript jquery html-form attachment

我的表格如下:

<form id="submit_idea" name="submit_idea" method="post" action="">
  <a class="attach" title="Attach a file" onclick="clickAttachment()"
     href="javascript:void(0)">Attach File</a>
  <span id="id_filename"/>
  <input id="id_attachment" type="file" name="attachment"/>
  <input class="submit_btn" type="image" alt="Submit Idea" src="/static/img/submit_idea.png"/>
</form>

与之相关的相关javascript。

function updateAttachment() {
    var val = $("#id_attachment").attr("value");
    if (val) {
        var name = val.split('\\');
        $("#id_filename").html(name[name.length - 1]);
    }
    else {
        setTimeout(updateAttachment, 500);
    }
}

function clickAttachment() {
    jQuery('#id_attachment').click();
    setTimeout(updateAttachment, 500);
}

这适用于IE,但对FireFox 3.5.1完全不起作用。有没有其他方法可以使用dhtml / javascript(没有Flash等)在FF 3.5.1或更高版本中获得相同的结果?

我们可以使用CSS打扮“附加文件”链接,但我们无法更改FireFox为表单添加的浏览按钮的布局。 IE解决方案让我们通过代理点击按钮来浏览文件,但这在FireFox下无效。

提前致谢,-peter

1 个答案:

答案 0 :(得分:1)

这就是你要找的东西,我相信

Styling an input type="file"

相关问题