模拟单击ASP.NET按钮时出现的问题
我有一些这样的代码模拟单击ASP.NET按钮时出现的问题,asp.net,javascript,Asp.net,Javascript,我有一些这样的代码 <asp:Button ID="cancelDummyButt" runat="server" CausesValidation="False" Text="cancel" onclick="cancelDummyButt_Click" Enabled="True" /> (Javascript:) buttid=''; eltoclick=document.getElementById(buttid); eltoclick.click(); 未
<asp:Button ID="cancelDummyButt" runat="server" CausesValidation="False"
Text="cancel" onclick="cancelDummyButt_Click" Enabled="True" />
(Javascript:)
buttid='';
eltoclick=document.getElementById(buttid);
eltoclick.click();
未调用服务器端代码。怎么了?直到“咔嗒”一声,一切正常。调试的最佳方式是什么
(这是从updatepanel中的iframe获取正确的回发)首先,您在这一行有一个错误:
buttid = '<%= cancelDummyButt.ClientID.ToString() %>';
已解决-这是由模态jQuerywindow引起的 (当然,我想绕开这一点)
OlavOlav,模式窗口的诀窍是在模式窗口外有一个隐藏的ASP:按钮。在模式窗口中可以有一个常规的html按钮,单击该按钮时,会调用隐藏的ASP:button控件的uuDoPostBack(“”,“”)方法。这与实际单击ASP按钮的效果相同
<!-- start modal dialog div -->
<input type="button" onclick="__doPostBack('<%= btnDoIt.UniqueID %>','');" value="Do It!" />
<!-- end modal dialog div -->
<asp:Button id="btnDoIt" style="display:none;" runat="server"></asp:Button>
以编程方式调用控件的click()事件不会触发事件处理程序函数。您需要手动调用它
if(eltoclick.onclick())
eltoclick.click();
我认为在VB.NET中不带“()”的ToString是可以的-无论如何buttid和eltoclick被正确分配了,就我所能看到的,删除ToString就可以了!(可能是“OnClick”而不是“OnClick”)
<!-- start modal dialog div -->
<input type="button" onclick="__doPostBack('<%= btnDoIt.UniqueID %>','');" value="Do It!" />
<!-- end modal dialog div -->
<asp:Button id="btnDoIt" style="display:none;" runat="server"></asp:Button>
if(eltoclick.onclick())
eltoclick.click();