<input> в модальном режиме показывает неправильные значения - PullRequest
0 голосов
/ 27 мая 2020

Я сократил свой исходный вопрос до более простого примера, который можно воспроизвести на JS Fiddle .

У меня есть модальный диалог (#popup), содержащий некоторые <input> s украшены классом V:

<input class="V" type="number" />
<input class="V" type="text" />

У меня есть кнопка, которая устанавливает атрибут value каждого <input> на некоторое значение и запускает это модальное окно:

<button onclick="edit();">Edit</button>

<script>
  edit = () => {
    const inputs = $(".V");
    inputs[0].setAttribute("value", "999");
    inputs[1].setAttribute("value", "998");
    $("#popup").modal("show");
  }
</script>

В модальном режиме, если я изменю значение элемента <input> и закрою его, при следующем запуске его снова <input> покажет измененное значение вместо явно заданного значения, 999 или 998.

Почему это происходит?

Проблема не возникает, если модальное окно содержит единственный <input>, а я использую метод jQuery .val() для установки значения.

1 Ответ

0 голосов
/ 28 мая 2020

Таким образом, вам нужно установить каждый индивидуально, вот версия jQuery

edit = () => {
  const inputs = $(".V");
  $(inputs[0]).val(999)
  $(inputs[1]).val("999")
  $("#popup").modal("show");
}

--- старое решение --- Это jQuery, вы можете просто сделать:

edit = () => {
  const inputs = $(".V");
  inputs.val(999);
  $("#popup").modal("show");
}
...