Проблема, когда xeditable.editable ('disabled') удаляет все html в мой тег <a> - PullRequest
0 голосов
/ 29 января 2020

У меня есть веб-интерфейс на bootstrap 4, и я хочу использовать xeditable. Я нашел bootstrap 4-совместимую версию, пока что все хорошо.

Мне нужно иметь возможность включать и отключать поведение xeditable в зависимости от полученных данных из моей веб-сокета.

I Построить мой пользовательский интерфейс динамически, поэтому вот что выглядит как html part.

<h4><a href="#" id="{{vac200.serial}}_targetVac" data-type="text" data-pk="{{vac200.id}}" data-url="/vac200s/update/" data-name="targetVac" data-title="Enter desired target vacuum."></a></h4>

А вот как это выглядит при обработке django:

<h4><a href="#" id="060100024_targetVac" data-type="text" data-pk="8" data-url="/vac200s/update/" data-name="targetVac" data-title="Enter desired target vacuum." class="editable editable-click">30.0</a></h4>

В моем * Сценарий 1024 *, я получаю все свои устройства через json данные с моего сервера и заполняю ими данные в пользовательском интерфейсе. поэтому у меня есть forEach () l oop для каждого устройства, на котором я звоню:

$(document.getElementById(vac200.fields.serial + "_targetVac")).editable();

И пока все хорошо. все мои данные все еще отображаются в интерфейсе пользователя.

Проблема при попытке деактивировать xeditable. Когда я получаю режим 1, мне нужно отключить функцию xeditable, и когда я это делаю, все внутри моего тега просто исчезает из пользовательского интерфейса, пока я не получу новые данные для этого тега.

    if(data.mode == 1){
        autoBt.classList.add("active");
        $(document.getElementById(data.serial + "_targetVac")).editable('disable');
    }else{
        autoBt.classList.remove("active");
        $(document.getElementById(data.serial + "_targetVac")).editable('enable');
    }

Я не понимаю зачем менять отключенное или включить поведение xeditable, удалить данные внутри моего тега.

...