1

我在按钮上绑定自定义事件以应用 Jquery ui 按钮插件,例如:

      $(document).ready(function() { 
        $(".uibutton").live("CustomEvent", function() { $(this).button(); });
        $(".uibutton").trigger("CustomEvent");
      });

      <input type="button" class="uibutton" >

现在这适用于按钮,present in the MarkUP但按钮created dynamicallyclass uibutton,这是行不通的。谁能告诉我为什么?

4

3 回答 3

2

正如评论中提到的,问题似乎是即使自定义事件已成功绑定,即使对于具有类 uibutton 的动态创建的按钮,每次创建新按钮时仍需要再次触发该事件。.ready() 函数中的 .trigger() 只会影响当时存在的按钮。

于 2012-06-11T08:27:43.510 回答
1

$(".uibutton).trigger("CustomEvent");

缺少关闭报价。

它应该是这样的:

$(".uibutton").trigger("CustomEvent");

尝试一下。

于 2012-06-11T08:11:41.020 回答
1

我知道你提到了使用on(),但它并没有工作,但请确保你已经像这样使用它:

$(document).on("click", ".uibutton", function() {
  /// My code....
});

并再次测试。

问题是,您需要将此处理程序添加到document元素,这在文档中可能并不明显。只有这样,您才能on()live(). 请务必使用on()版本,因为后者将在某一时刻从 jQuery 中删除。

于 2012-06-11T08:42:12.567 回答