【发布时间】:2011-04-26 03:09:52
【问题描述】:
我有一个插件,它本质上是在服务器端对表进行排序并将内容放回容器中。我有一个绑定函数,它向表头单元格添加一个点击事件来调用父表单提交。我觉得这不是解决这个问题的最佳方式。有什么想法吗?
$.fn.myplugin = function() {
return this.each(function() {
var parentform = $(this).parents("form");
var tableidentifier = $(this).attr("id");
var bindclicks = function() {
parentform.find("table#" + tableidentifier + " thead tr th").click(function() {
// Some code to change the sort column- boring!
parentform.submit();
});
}
bindclicks();
parentform.submit(function() {
$.post(parentform.attr("action"), parentform.serialize(), function(res) {
parentform.find("table#" + tableidentifier).replaceWith($(res));
bindclicks();
})
return false;
});
});
}
我首先调用bindclicks() 函数来设置点击处理程序,然后因为我在做replaceWith() 我再次调用它来重新绑定这些事件。它有效,但我很好奇..
【问题讨论】:
标签: javascript jquery