【发布时间】:2011-06-22 13:47:59
【问题描述】:
我的页面上有一个隐藏按钮,它触发一个 jquery 函数,看起来好像我不能从服务器端调用 jquery 函数我试图触发按钮点击一个 asp 按钮,我想知道我会怎么做?
提前致谢。
【问题讨论】:
-
澄清一下,你想让jquery触发一个回发到服务器的事件吗?
我的页面上有一个隐藏按钮,它触发一个 jquery 函数,看起来好像我不能从服务器端调用 jquery 函数我试图触发按钮点击一个 asp 按钮,我想知道我会怎么做?
提前致谢。
【问题讨论】:
我不完全确定你想做什么,但这里有几个选项:
要模拟点击 HTML 按钮(客户端),您可以使用 JQuery:
$("#mybutton).click();
或
$("#mybutton).trigger("click");
当然,您需要将处理程序附加到您的按钮上
$(document).ready(function(){
$("#mybutton").click(function(){
//do something
});
});
如果您想模拟点击 ASP.Net(服务器端按钮):
你可以通过调用按钮的Click事件绑定的函数来模拟一个按钮被点击:
<asp:button runat="server" id="btn1" Onclick="btn1_Click" Text="Click Me" />
protected void btn1_Click(object sender, EventArgs e){
//stuff that happens when you click the button.
}
然后在代码中:
例如
btn1_Click(null, new EventArgs());
对earlier question 的回复会更深入地探讨这个主题。
更新:
从服务器端,你能做的最好的事情就是重新加载页面,然后让它生成一个脚本来进行必要的函数调用。
按钮必须是一个普通的 HTML 按钮还是可以是一个普通的 HTML 按钮?如果后者只是将其连接到一个通过其 Id 调用 modal 的函数。
如果是前者,您需要在声明中添加一个 CssClass 并通过其类将其连接到一个函数 - $(文档).ready(函数(){ $(".myButtonClass").click(function(){//按类连线 $("#myButtonId").click(function(){//通过 html ID 连接 $('#MyModalContent').modal(); 返回假; //您可能需要额外的代码来防止事件传播。 });
【讨论】:
【讨论】:
或者,您可以使用 ClientScriptManager.RegisterStartupScript() 从代码隐藏调用客户端脚本。
【讨论】: