如何通过JQuery或Javascript以编程方式调用服务器单击
How do you programmatically Invoke a Server Click via JQuery or Javascript
我在用户控件上有一个ASP服务器按钮,它可以触发服务器端的OnClick事件,该事件运行良好。但是我需要使用JavaScript或JQuery来触发OnClick事件。
我尝试了以下方法,但都没有像用户实际点击按钮一样模拟结果:
document.getElementById('<%=btnRefresh.ClientID%>').click();
$('#<%=btnRefresh.ClientID %>').click();
我怀疑这可能是因为它模拟的是OnClientClick事件,而不是服务器;但我发现有人声称这对成功触发服务器端点击事件的其他人有效,但这对我无效。
有其他方法可以完成任务吗?
响应AJAX的建议。我尝试过这种方法,但成功完成这项任务需要PostBack。实际点击按钮会产生所需的结果,我可以使用AJAX触发事件,但如果没有PostBack元素,它就会失败。
我有一个ASP服务器按钮
所以你有类似的东西
<asp:Button ID="btnRefresh" Text="I'm a button" OnClick="btnRefresh_Click" />
为了执行客户端调用,在服务器调用之前,您只需要将函数或内联代码附加到OnClientClick
属性:
<asp:Button ID="btnRefresh"
Text="I'm a button"
OnClick="btnRefresh_Click"
OnClientClick="btnRefreshClick" />
并且在您的javascript中简单地添加该方法
function btnRefreshClick() {
// your stuff goes here...
return true; // returning true (or nothing) will fire the server side click
// returning false will not fire it
}
添加:误解了这个问题,所以你想激发一个javascript事件,它会自动在按钮上执行click
。。。
我刚刚测试了这个代码:
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /><br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br/>
<a href="#" class="a">fire button click event</a>
</div>
</form>
<script>
$(".a").click(function() {
//var elm = $("#" + "<%= Button1.ClientID %>"); elm.click(); // with jQuery
var elm = document.getElementById('<%=Button1.ClientID%>');
elm.click();
});
</script>
</body>
我可以正确地按下按钮,无论是否使用jQuery:
正在执行的放映:http://screencast.com/t/m4ohA9uW
相关文章:
- 以不同的方式调用javascript函数
- 以编程方式调用javascript函数
- 以 func(a)(b)(c) 的方式调用的 Javascript 函数
- 如何用两种不同的方式调用同一个函数
- 以编程方式调用模糊会禁用与浏览器窗口的交互
- 以编程方式调用选项卡捕获引发异常
- 防止以编程方式调用 django-rest-framework API
- 如何在回发上保留选定的选项卡或以编程方式调用之前激活方法
- jwysiwyg以编程方式调用工具栏单击
- Dropzone.js以编程方式调用accept()函数
- 如何通过JQuery或Javascript以编程方式调用服务器单击
- 如何在 d3 中以编程方式调用“单击”事件
- 如何以编程方式调用;点击“;的css
- 使用JQuery以不可见的方式调用URL并返回成功/错误标志
- javascript onclick事件在internet explorer中以编程方式调用时未冒泡<=8.
- 以全局函数的方式调用局部函数
- 可以以编程方式调用事件处理程序吗?
- 是否可以在JS中以编程方式调用电话号码?
- 如何在angularjs中以编程方式调用自定义指令
- 以编程方式调用onclick和onchange不能按预期工作