Допустим, у нас есть форма со следующими входами: (да и то, что если мы действительно хотим, чтобы эти имена)Элементы формы перезапись по умолчанию свойства объекта формы
<form id="form-id">
<input type="text" name="submit" />
<input type="text" name="elements" />
<input type="text" name="id" />
<input type="text" name="addEventListener" />
</form>
Теперь, если мы попытаемся свойства формы доступа, все мы получаем объекты ввода:
var form = document.getElementById('form-id');
form.elements; // will be <input type="text" name="elements" /> instead of a list of elements
та же проблема с:
form.submit;
form.id;
form.addEventListener;
и все другие четкости ault свойства объекта формы.
Я действительно понимаю, что мы могли бы найти другой способ доступа к этим свойствам ... , но что мы должны делать с теми, что мы не можем?
Мои мысли, что стандарт должен быть другим, что-то вроде этого:
form.elements = {
"submit": [object HTMLFormElement], // <input type="text" name="submit" />
"elements": [object HTMLFormElement], // <input type="text" name="elements" />
...
etc
}
не как свойства самой формы.
Ваши предложения.
В каких свойствах вы не найдете другого доступа? – Alohci
Избегайте использования ключевых слов в качестве имен. Если вам нужно, вы должны пройти через утомительное свойство управлять сломанным состоянием. Удалите имя из элемента, сохраните расположение '.submit' или' .elements', а затем переназначьте имя. –
@Alohci Как мне получить массив form.elements в постоянное время с вводом с именем «элементы»? – Tengiz