【发布时间】:2011-02-17 09:42:30
【问题描述】:
我在更新面板中有一个中继器,在中继器中有几个面板。 这些面板在方式上有所不同,但它们有一个共同的 css 类,所以我将它们的 onclick、onmouseover 和 onmouseout 事件与 $(document).ready 上的 jQuery 连接起来
但是在更新面板更新的部分回发后,这些电线丢失了,我找不到将这些电线放回的地方。
$(document).ready(function () {
$(".actionicon_normal").click(function () {
ClickActionIcon($(this));
});
$(".actionicon_normal").hover(function () {
HoverActionIcon($(this));
}, function () {
OutActionIcon($(this));
});
$(".actionicon_normal").each(function (i) {
var chk = $(this).find("input");
var backpos = $(this).css("background-position").split(" ");
if (chk.attr("checked")) {
$(this).css("background-position", backpos[0] + " -" + $(this).height() + "px");
}
});
})
如您所见,我在 $(".actionicon_normal").each 中修改了背景位置。 更新更新面板后,我需要一个地方来运行它。 我尝试使用 .ajaxComplete 进行试验,但找不到合适的解决方案。
另一种方法是将这些连接到代码隐藏中,但我无法获取所有操作图标,因为 ItemDataBind 仅在首次加载时才保存,而且即使在 ItemCreated 中我也无法获取所有这些div 具有相同的 css 类,而且 div 中有一个 CheckBox,我需要检查选中的值,但我也无法做到这一点。因此,如果服务器端是更好的方法,我需要很多帮助。
【问题讨论】:
标签: c# jquery ajax updatepanel webforms