重新应用JQuery选择克隆元素

时间:2013-07-26 15:04:47

标签: ajax jquery-chosen

这个问题以前曾以各种形式提出过,但我找不到满意的答案,所以我想特别提出这个问题。

我有一个选择的选择框,如下所示:

<select name="publicationID[]" id="publicationID[]" class="chzn-select-create-option" data-placeholder="Select Publication or type new..." style="width:550px;">

这是常规选择的略微修改版本,允许您向下拉列表添加元素(这与问题无关)。

我有一个按钮,上面写着“添加另一个发布”,它会触发Ajax查询以创建上述元素的副本,即publicationID []。

由于select元素的ID冲突,选择的麻烦不适用于克隆。正如您所看到的,我正在使用ID名称的数组版本,以便在发布数据后我可以遍历数组,但如果所选样式不能应用于副本,那么这并不好。

我的初始selected()调用是在返回元素的副本后在ajax中进行的,通常工作正常,除非在这个重复ID的实例中:

(阿贾克斯)

document.getElementById(div).innerHTML=oXmlHttp.responseText
doChosen();

(doChosen功能)

function doChosen() {
    $(".chzn-select").chosen();
    $(".chzn-select-deselect").chosen({allow_single_deselect:true});
    $(".chzn-select-create-option").chosen({
            create_option: function(term){
            var chosen = this;
            chosen.append_option({
            value: term,
            text: "New: " + term
    });
    },
    persistent_create_option: true
    });
}

我在这里看到了几个解决方案,谈论在表单中删除和重新应用所选择的样式,但我没有看到任何内容以简单的方式让我遵循。

0 个答案:

没有答案