Добавление jQuery UI Spinner динамически
У меня проблемы с виджетом Spinner пользовательского интерфейса jQuery. Он отлично работает, когда ввод добавляется в HTML; однако, когда я добавляю вход динамически, он не работает. Я создал пример не работающего счетчика, когда он добавляется динамически здесь: пример jsfiddle
function injectSpinner(){
console.log("Injecting Spinner");
var p = document.createElement('p');
var label = document.createElement('label');
var text = document.createTextNode("Select a value:");
var input = document.createElement('input');
label.appendChild(text);
label.setAttribute("for", "spinner");
p.appendChild(label);
input.setAttribute("id", "spinner");
input.setAttribute("name", "value");
p.appendChild(input);
$("#spinner").spinner();
$("#moduleArea").append(p);
};
Я использовал этот метод со многими другими виджетами пользовательского интерфейса jQuery, и, похоже, проблем нет.
1 ответ
Решение
Входные данные должны быть частью DOM, прежде чем вы вызовете.spinner() для него.
Поэтому, пожалуйста, позвоните $("#moduleArea").append(p);
до $("#spinner").spinner();
Я обновил вашу скрипку соответственно.