Как вы выбрали selected.js для использования клонированного контента, сгенерированного javascript? - PullRequest
1 голос
/ 23 марта 2019

Я использую selected.js версии 1.8.7. Я могу клонировать содержимое div в другой div со всеми данными и событиями, используя clone (true). Я изменил все идентификаторы, чтобы получить новыйУдостоверение личности на клонированных предметах.Проблема в том, что когда я выбираю сгенерированный с помощью JavaScript список выбора, он активирует исходный список выбора, а не сам себя.

Я попытался клонировать без всех данных и событий с помощью clone ().Он клонирует, но не позволяет вновь сгенерированному <select> раскрыться вообще.Я удалил selected.js, и clone (true) копирует все, и каждый список <select> работает индивидуально, но нет возможности фильтрации.

<form method="post" name="add_items">

<div class="clone-test" id="cloned">
<select id="items1" name="contract_item[]" class="form-control chosen-select" data-placeholder="Choose a item...">
<option value="0">Select a Item</option>
<option value="1">Car 1</option>
<option value="2">Car 2</option>
<option value="3">Car 3</option>
</select>
</div>

<div class="col-md-6" id="new_items"></div>


</form>

<input type="button" onclick="clone_div()" name="add" value="Add Another Item" class="btn btn-primary" id="add_select">


<script type="text/javascript">
var regex = /^(.+?)(\d+)$/i;
var cloneIndex = $("#cloned").length;

function clone_div(){
    $("#cloned").clone(true)
        .appendTo("#new_items")
        .attr("id", "cloned" +  cloneIndex)
        .find("*")
        .each(function() {
            var id = this.id || "";
            var match = id.match(regex) || [];
            if (match.length == 3) {
                this.id = match[1] + (cloneIndex);
            }
        })
cloneIndex++;

$("#new_items").html(html);
$(".chosen-select").chosen();
}

</script>

Я ожидаю, что каждый отдельный список <select> будет работатьнезависимо иметь каждый список с возможностью фильтрации, используя selected.js.Я получаю активацию исходного списка выбора независимо от того, какой сгенерированный javascript список <select> я выберу.

...