在ASP.NET中,Jquery Toggle无法处理字段集图例
本文关键字:处理 字段 Toggle NET ASP Jquery | 更新日期: 2023-09-27 18:20:55
我在Update Panel
中有fieldset
>图例。我在图例上使用jquery切换,在第一页加载时,它运行良好。
在更新面板里,我有一个按钮,点击它就会发生部分回发;将打开一个新的filedset>图例。
现在jquery切换在两个字段集图例上都不起作用。
代码:
$('fieldset').delegate('legend.test', 'click', function (ev) { ev.preventDefault();
$(this).next("div.showhidefsl").slideToggle("fast");
$(this).parent("fieldset").toggleClass("fieldsetborderToggle");
$(this).toggleClass("active"); });
如果异步回发后不起作用,请使用:
function pageLoad(){
$('fieldset').delegate('legend.test', 'click', function (ev) {
ev.preventDefault();
$(this).next("div.showhidefsl").slideToggle("fast");
$(this).parent("fieldset").toggleClass("fieldsetborderToggle");
$(this).toggleClass("active"); });
}
另一种选择是使用异步事件:
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function() {
$('fieldset').delegate('legend.test', 'click', function (ev) {
ev.preventDefault();
$(this).next("div.showhidefsl").slideToggle("fast");
$(this).parent("fieldset").toggleClass("fieldsetborderToggle");
$(this).toggleClass("active"); });
});
相反:
$(document).ready(function(){
//your code
});
使用live()或on()事件注册您的代理。
$('fieldset').live('legend.test', 'click', function (ev) {
ev.preventDefault();
$(this).next("div.showhidefsl").slideToggle("fast");
$(this).parent("fieldset").toggleClass("fieldsetborderToggle");
$(this).toggleClass("active"); });
}