Я знаю, что они говорят, что innerHTML небезопасен и может быть медленным, хотя теперь он является частью HTML5. С другой стороны, использование DOM может быть подробным.Использование значения элемента vs innerHTML?
Как использовать значение, например. значение кнопки?
function changeit (valueff, idP){
var change_item = prompt("Change this item",valueff);
if (change_item)
{
document.getElementById(idP).value = change_item;
}
...
Это меню ресторана, выполненное с использованием Codeigniter. Таким образом, функция получает значение кнопки и ее идентификатор, а затем значение изменяется в соответствии с входом администратора. Затем он вызывает ajax-вызов базы данных и изменяет соответствующую запись. Я планирую санировать курс, конечно.
Так выше лучше, чем при использовании innerHTML и текстовое поле ?:
document.getElementById(idP).innerHTML = change_item;
значение, которое должно быть изменено может быть строка в меню, например, Espresso $ 2,50, это не имеет значения, если я использую кнопку, пока администратор может нажать на нее и изменить значение в текущем меню.
<input id="list_5" type="button" value="Espresso $2.50" onclick="changeit(this.value,this.id);">
EDIT:
Если Google почему innerHTML плохо - вы получите много результатов, для (например, этот ответ на SO) [Why is "element.innerHTML+=" bad code?
ВнутреннийHTML не замедляет вообще. jQuery использует это массивно, чтобы установить/получить содержимое элементов. "* значение * vs. * innerHTML *"? Логически это зависит только от того, хотите ли вы изменить значение * или * HTML-кода элемента. –
Многие говорят, что innerHTML небезопасен. –
Я никогда не читаю серьезную статью, в которой говорится: * почему * 'innerHTML'// должен * быть небезопасным. –