我需要使用Jquery触发asp.net(链接按钮或按钮)单击事件(服务器端代码),按钮位于更新面板中。请帮助。
答案 0 :(得分:4)
以下是示例代码。
<%= Page.ClientScript.GetPostBackEventReference(lnkButton, "") %>
答案 1 :(得分:2)
怎么样:
__doPostBack("<%= lnkMyButton.UniqueID %>", "");
答案 2 :(得分:1)
您需要做的是将服务器端代码定义为[WebMethod],一旦您这样做,您的类名将可用于客户端代码以进行调用。
然后你会用这样的东西调用那个方法:
jQuery.ajax({
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: '{}',
dataType: 'json',
url: 'MyPage.aspx/SomePageMethod',
success: function(result){
alert(result);
}
});
我更像是一个C#人,但我想如果您阅读此页面,您可以轻松地在VB中创建它:http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/
答案 3 :(得分:0)
以下是我在更新面板中使用LinkButton触发点击事件的方法。由于我创建按钮的方式,我无法在运行时获取ID,也就是说,它会在按钮名称的末尾添加_0,_1等。例如,在服务器上,我将创建2个按钮,ID为111555&amp;它将使用ID重命名按钮:
contentMain_gridviewMessages_111555_0
contentMain_gridviewMessages_222666_1
所以我做的第一件事是创建一个我可以搜索的唯一属性,在我的例子中是消息ID:
var msgLink = ('a[messageId="' + messageId + '"]');
之后我使用了一点jQuery来获取自动生成的ID:
var id = $(msgLink).attr("ID");
当我得到ID好时尚时,javascript做了其余的事情:
document.getElementById(id).click();
希望这可以帮助别人。