如何获得ajax手风琴的点击事件?asp.net
我有一个ajax手风琴,每个窗格都包含一个updatepanel(动态创建)。我希望UpdatePanel在单击窗格的标题时刷新,但没有单击事件 我可以在标题中弹出一个按钮,并使用scriptmanager将其注册为异步触发器,但我不需要按钮,我希望整个标题都是触发器 我看不到将div或标签设置为触发器的方法,因为它们没有服务器端单击事件。还有其他方法吗?使用jQuery 语法如下所示:如何获得ajax手风琴的点击事件?asp.net,asp.net,accordion,Asp.net,Accordion,我有一个ajax手风琴,每个窗格都包含一个updatepanel(动态创建)。我希望UpdatePanel在单击窗格的标题时刷新,但没有单击事件 我可以在标题中弹出一个按钮,并使用scriptmanager将其注册为异步触发器,但我不需要按钮,我希望整个标题都是触发器 我看不到将div或标签设置为触发器的方法,因为它们没有服务器端单击事件。还有其他方法吗?使用jQuery 语法如下所示: $('#myHeading').click(function(){ // Your code her
$('#myHeading').click(function(){
// Your code here
});
$('[id*="myHeading"]').click(function(){
// Your code here
});
有时使用ASP.NET时,我不得不使用通配符ID匹配,因为ASP.NET会为元素创建非常长的半随机客户端ID。您可以执行以下操作:
$('#myHeading').click(function(){
// Your code here
});
$('[id*="myHeading"]').click(function(){
// Your code here
});
实际上,您可以选择DOM上的任何内容,并使用jQuery将事件处理程序附加到它。有时候,你必须对选择器有创造性
重要提示:如果您使用的是updatepanels,并且要监视单击的标题位于该面板内,则需要在通过ajax加载/重新加载面板后,将这些事件处理程序重新绑定到您选择的元素。这可以使用以下代码实现:
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_pageLoaded(panelLoaded);
function panelLoaded(sender, args){
$('[id*="myHeading"]').click(function(){
// Do something after there is a click
});
}