【发布时间】:2009-08-20 07:21:07
【问题描述】:
这段代码应该在在 IE 中工作,但它不能。 (请不要在 Firefox 中测试它,因为我不会在其中使用这种方法。) 我会触发打开的对话,但我现在想要的是在用户进行选择时在跨度内显示附件的名称。有什么帮助吗?
<html>
<head>
<title>example</title>
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript">
$(document).ready( function(){
$("#attach").after("<input id='fakeAttach' type='button' value='attach a file' />");
$("#fakeAttach").click(function() {
$("#attach").click();
$("#maxSize").after("<div id='temporary'><span id='attachedFile'></span><input id='remove' type='button' value='remove' /></div>");
$('#attach').change(function(){
$("#fakeAttach").attr("disabled","disabled");
$("#attachedFile").html($(this).val());
});
$("#remove").click(function(e){
e.preventDefault();
$("#attach").replaceWith($("#attach").clone());
$("#fakeAttach").attr("disabled","");
$("#temporary").remove();
});
})
});
</script>
</head>
<body>
<input id="attach" type="file" /><span id="maxSize">(less than 1MB)</span>
</body>
</html>
【问题讨论】:
-
何时显示文件名?
-
我不知道为什么我们不能在 Firefox 中测试它,但它在 Firefox 上不起作用。
-
(@Randell) 你可以在任何地方进行测试,但我为 Firefox 实现了另一个解决方案。此方法仅适用于 IE。请试一试看看。我希望在用户选择文件时(从打开的对话框中)显示名称。谢谢!