Как загрузить и динамически обновить значение evt.newIndex в поле ввода для последующего сохранения? - PullRequest
1 голос
/ 23 апреля 2019

Необходимо сохранить индекс элемента на входе.При загрузке я получаю индекс всех полей, но при перетаскивании поля не меняются.Я использую эту библиотеку (перетаскивание StartableJs)

<ul class="loop" id="block">
    <li class="list-group-item">
        <span class="my-handle" id="my-handle" aria-hidden="true"></span>
        <input id="index_li" output="bootstrap" placeholder="-">
    </li>   
    <li class="list-group-item">
        <span class="my-handle" id="my-handle" aria-hidden="true"></span>
        <input id="index_li" output="bootstrap" placeholder="-">
    </li>   
    <li class="list-group-item">
        <span class="my-handle" id="my-handle" aria-hidden="true"></span>
        <input id="index_li" output="bootstrap" placeholder="-">
    </li>   
</ul>

эта библиотека js SortableJs

var options = {
    group: 'Block',
    animation: 100,
    onEnd: function (/**Event*/evt) {
    evt.oldIndex;  // element's old index within parent
    evt.newIndex;  // element's new index within parent
    evt.oldDraggableIndex;
    evt.newDraggableIndex;
    }
};

events = [
    'onChoose',
    'onStart',
    'onEnd',
    'onAdd',
    'onUpdate',
    'onSort',
    'onRemove',
    'onChange',
    'onUnchoose'
    ].forEach(function (name) {
        options[name] = function (evt) {

        console.log({
        //'event': name,
        //'this': this,
        //'item': evt.item,
        //'from': evt.from,
        //'to': evt.to,
        //'oldIndex': evt.oldIndex,
        'newIndex': evt.newIndex,
        //'newDraggableIndex': evt.newDraggableIndex,
        //'index': $(this).index()
    });

    var newindex = evt.newIndex;
    var oldindex = evt.oldIndex;

    window.onload = function(){
    var input_ix = document.getElementsByTagName('input')[$(this).index()];
    $( input_ix ).val($(this).index());


    };

    };
});

Sortable.create(block, options);

Необходимо сохранить newIndex в каждом поле ввода в li> input

    //$( input_ix ).val(newindex);
     //if i do so, I get undefind

Если я получаю индекс элемента, возникает проблема с обновлением значений

...