Javascript jQuery-在元素上激发函数

Javascript jQuery-在元素上激发函数,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,我需要在一些输入元素中添加一个颜色选择器。 我正在使用 $(".element").colorPicker(){ ... } 这很好用。 问题是页面有一个AJAX表单,提交时,它将用一个新表单(新的输入字段等)覆盖以前的表单。之后,颜色选择器停止工作 那么,我怎样才能将该函数也激发到新创建的输入中呢?只要在ajax回调中重新附加调用,因为我认为没有可靠的事件可以用于.live或.delegate调用,而不必透露更多信息。只要在ajax回调中重新附加调用,因为我不相信有一个可靠的事件可以用来.l

我需要在一些输入元素中添加一个颜色选择器。 我正在使用

$(".element").colorPicker(){ ... }
这很好用。 问题是页面有一个AJAX表单,提交时,它将用一个新表单(新的输入字段等)覆盖以前的表单。之后,颜色选择器停止工作


那么,我怎样才能将该函数也激发到新创建的输入中呢?

只要在ajax回调中重新附加调用,因为我认为没有可靠的事件可以用于
.live
.delegate
调用,而不必透露更多信息。

只要在ajax回调中重新附加调用,因为我不相信有一个可靠的事件可以用来
.live
.delegate
而不透露更多信息。

我相信这可能会起作用:

$(".element").live('click focus', function () {
    var $this = $(this);
    if (!$this.data('hasColorPicker')) {
        $this.colorPicker({ /* ... */ }).data('hasColorPicker', true);
        $this.click(); // trigger the color picker - assuming it binds itself to the click event
    }
});

我相信这可能会奏效:

$(".element").live('click focus', function () {
    var $this = $(this);
    if (!$this.data('hasColorPicker')) {
        $this.colorPicker({ /* ... */ }).data('hasColorPicker', true);
        $this.click(); // trigger the color picker - assuming it binds itself to the click event
    }
});

<> Pe> Mead说的是好的,但是,如果你通过复制现有的元素来创建新的元素,考虑使用<代码> $.克隆(true)< /Cord>来复制你的副本,并且它将继承现有的事件绑定。Mead说的是好的,但是,如果你通过复制现有的元素来创建新的元素,考虑使用<代码> $.克隆(true)< /Cord>来复制你的副本,并且它将继承现有的事件绑定。p> 因此,我在ajax响应中再次添加了
$(“.element).
部分?在ajax
success
函数中,reinvoke
.colorPicker
。因此,我添加了
$(“.element)再次参与ajax响应?在ajax
success
函数中,reinvoke
.colorPicker