【发布时间】:2014-11-19 08:48:45
【问题描述】:
我在用户控件上有一个 ASP 服务器按钮,它触发了一个服务器端 OnClick 事件,它工作正常。但我需要使用 JavaScript 或 JQuery 触发 OnClick 事件。
我尝试了以下方法,但都没有像用户实际单击按钮那样实际模拟结果:
document.getElementById('<%=btnRefresh.ClientID%>').click();
$('#<%=btnRefresh.ClientID %>').click();
我怀疑这可能是因为它模拟了 OnClientClick 事件而不是服务器;但我发现声称这对其他人成功触发服务器端 OnClick 事件有效,但这对我不起作用。
还有其他方法可以完成任务吗?
响应AJAX的建议。我已经尝试过这种方法,但是要成功完成此任务,需要 PostBack。按钮的实际单击会产生所需的结果,我可以使用 AJAX 触发事件,但如果没有 PostBack 的元素,它会失败。
【问题讨论】:
-
如果要通过客户端触发服务器事件,需要使用AJAX
-
你有那个按钮的客户端事件处理程序吗?也许它返回 false 或以其他方式阻止回发发生。
-
@tymeJV 不,您可能会导致来自客户端代码的回发。使用 AJAX 会更好的设计,但不是必须的。
-
@mason -- 是的 -- 应该提到回发...我只是假设现在没有人想要回发:D
-
@tymeJV 与
WebForms合作。 :)
标签: javascript jquery asp.net