Я новичок в javascript. Я пытаюсь добавить функцию для создания новых элементов формы, используя javascript, на странице, созданной в php.Использование атрибутов HTML в javascript
Код работает при создании новых элементов <tr>, <td>, <input type="text">
html. Однако, когда я пытаюсь создавать кнопки с использованием стилей css, я нахожу, что стили теряются из тегов.
if(document.createElement)
var tr = document.createElement("tr");
var input = document.createElement("input");
// If NS is passed, should become NS[2] etc
input.id = field+"["+count+"]";
input.name = field+"["+count+"]";
input.type = "text"; //Type of field - can be any valid input type like text,file,checkbox etc.
var td=document.createElement("td");
var newContent = document.createTextNode("NS");
td.appendChild(newContent);
tr.appendChild(td);
td=document.createElement("td");
td.appendChild(input);
tr.appendChild(td);
var btnDel=document.createElement("a");
btnDel.class="btn btn-primary";
btnDel.onclick = "addField(\'nameservers\',\'NS\',10);" ;
var btnText=document.createElement("span");
btnText.class="btn-label";
btnText.innerHTML="Add";
btnDel.appendChild(btnText);
td.appendChild(btnDel);
tr.appendChild(td);
field_area.appendChild(tr);
}
Полученный код показывает:
<a><span>Add</span>
</a>
</td>
вместо того, что я ожидал:
<a onclick="addField('nameservers','NS',10);" class="btn btn-primary">
<span class="btn-label">Add
</span>
</a>
Что я делаю неправильно? Каков правильный способ передачи всех атрибутов html с помощью скрипта?
О первой части вашего объяснения, это просто лучшая практика или используется 'element.onclick' на самом деле неправильно? – Droidzone
Это просто лучшая практика. Это не «НЕПРАВИЛЬНО». Но в будущем, когда вы захотите работать только с javascript, вы поймете, что вам не нужно идти между вашими файлами JS и вашими HTML-файлами, потому что у вас есть все ваши JS-ссылки в одном месте. – christopher
Спасибо. Он работает сейчас! – Droidzone