Я создал раскрывающийся список с javascript, и я заполняю его получением данных из базы данных MySQL.<input></input> in innerHTML не работает
Проблема в том, что я не могу разместить раскрывающийся список в коде innerHTML.
Это то, что я написал, чтобы создать выпадающий список с JS:
var mySpan = document.getElementById('myDiv');
var myLine = document.getElementById('testcat');
myLine.value++;
// Create select
var selection = document.createElement('select');
selection.setAttribute('name',"category[]");
mySpan.appendChild(selection);
// Create Option
createSelectOption(selection);
// Create the container
var ni = document.getElementById('myDiv');
ni.setAttribute('style', 'width:790px;');
...........
...........
Затем я создаю другие вещи, и для создания HTML-код, я использую:
newdiv.innerHTML = '<div class="table">.........</div>';
ni.appendChild(newdiv);
Это часть в HTML:
// test dropdown list
<input name="testcat" id="testcat" type="hidden" value="0" />
<div id="myDiv"></div>
Я проверил мой выпадающий список, как вы можете увидеть в приведенном выше коде, и она работает, если я объявляю <input name="testcat" id="testcat" type="hidden" value="0" />
в HTML (я имею в виду в <body></body>
), но если я использую тот же код в innerHTML, FireBug сообщает мне: «myLine is null; myLine.value ++;.?.»
Любая помощь
Есть ли у вас какие-либо строки разрыва в вашем HTML? Также это очень НЕПРАВИЛЬНАЯ идея вставить HTML, используя методы 'innerHTML'' document.createElement' и 'appendChild'. – antyrat
вы делаете их ** после ** страница завершила загрузку? Если нет, это не сработает –
Вы пробовали его как самозакрывающийся тег '' (обратите внимание на косую черту перед закрывающим угловым кронштейном) ? –