日期:2014-05-17  浏览次数:20413 次

一个关于jquery cick()的问题。
<asp:Button runat="server" ID="btnDownloadReport" OnClick="btnDownloadReport_Click" />

js:
$('#btnDownloadReport').click();


这个服务器按钮执行的后台方法是:下载一个pdf文件。
如果手动点击这个按钮,会马上进行下载,
而如果用js触发这个按钮的话,会有3-4秒的响应时间,并且会提示文件安全性,是否进行下载,并且会console.log()一些内容:如图所示,

所以我想,click()方法并不等于手动点击,
求大神指导,怎么做才能和手动点击一样的效果。

------解决方案--------------------
某些行为浏览器判断如果不是用户点击的,浏览器会阻止js操作
最常见的就是点击上传图片

默认浏览器只认上传控件的按钮,而且必须是鼠标点击了才能打开对话框,而常见的做法就是在按钮上面放一个东西靠样式遮盖住