我正在使用 asp 文件上传控件。我不想向用户展示丑陋的 asp.net 控件,所以使用了一些 style="width: 0px; height: 0px; overflow: hidden;"
使其隐藏。
这是我的html代码
<a id="a">Browse</a>
<div style="width: 0px; height: 0px; overflow: hidden;">
<asp:FileUpload ID="file" runat="server" />
</div>
<asp:Button ID="btn" runat="server" OnClick="btn_Click" />
还有我写的 jQuery 就绪函数
$(function(){
$('#a').click(function(){
$('#file').click();
});
});
但是这段代码并没有在 ie 中进行回发。我正在 ie 9 中进行测试。尽管它在 Chrome 和 Firefox 中运行良好。
任何人都可以告诉我我的代码有什么问题。或者解决这个问题。
最佳答案
您是否查看过 IE Developer 工具以查看 IE 中是否存在任何 javascript 错误?可能无法找到 ID 为"file"的控件,因为它是服务器控件,并且 ID 是在呈现页面时动态生成的。
使用它来选择服务器控件。
$("#<%= file.ClientID %>").click()
或者你可以使用 jquery 选择器。
$("[id$='file']")
关于javascript - 按钮不会在 IE 9 中回发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19912519/