繁体   English   中英

附加元素上的Selectize.js

[英]Selectize.js on Appended Elements

我目前正在尝试通过单击具有“添加”类的按钮将新元素添加到父元素。 我希望这些附加的元素在附加后获得selectize.js的功能,但不知何故。 这是我的JavaScript代码:

$('.add').click(function(){
var newSelectize = '<select id="input-tags"></select>';
var selectizeWrapper =$(this).parent().find('.selectize-wrapper');
var lastSelectize = selectizeWrapper.find('#input-tags').last();

selectizeWrapper.append(newSelectize);
lastSelectize.selectize({
     delimiter: ',',
    persist: false,
    maxItems: 1,
    options: items,
    labelField: "item",
    valueField: "item",
    sortField: 'item',
    searchField: 'item'
    });
});

这是我的示例JSFiddle。

这是一个工作小提琴

HTML:

<div class="demo">
    <div class="selectize-wrapper">
        <input type="text" value="test" class="elements demo-default selectized" id="input-tags" tabindex="-1" style="display: block;">
    </div>

    <input type="button" value="Add" class="add">
</div>

JS:

$('.add').click(function(){
var newSelectize = '<select id="input-tags" class="elements"></select>';
var selectizeWrapper =$(this).parent().find('.selectize-wrapper');


selectizeWrapper.append(newSelectize);
var lastSelectize = selectizeWrapper.find('.elements').last();
console.log(lastSelectize);
lastSelectize.selectize({
     delimiter: ',',
    persist: false,
    maxItems: 1,
    options: items,
    labelField: "item",
    valueField: "item",
    sortField: 'item',
    searchField: 'item'
    });
});

评论

  1. 除了添加类似的ID外,我还添加了一个称为elements的通用类。
  2. 这行var lastSelectize = selectizeWrapper.find('.elements').last(); 应该在您添加新的html selectizeWrapper.append(newSelectize);之后执行selectizeWrapper.append(newSelectize); ; 否则没有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM