Я пытаюсь обновить два поля ввода в форме при нажатии одной кнопки. У меня на самом деле был весь код справа при использовании document.getElementById, но форма, которую я использую, убирает идентификаторы, которые я установил, поэтому я не могу использовать getbyid. Если мне известна форма имя поля, как я могу изменить свою функцию, чтобы сделать то же самое? Обратите внимание, что моя форма имеет более двух полей, включая кнопку отправки, поэтому я не хочу их обновлять.JQuery одна кнопка обновляет несколько полей ввода в форме
Это то, что я использовал раньше (с селектором ID) Html:
<input type="text" name="field-1" id="info1">
<input type="text" name="field" id="info2">
<a href="#" onclick="addTxt(['value1','value2'],'info','2')">Populate</a>
JS:
function addTxt(val, id,no)
{
var id = id;
for(var i=1;i<=no;i++){
document.getElementById(id+i).value = val[i-1];
}
}
Fiddle: http://jsfiddle.net/qwz47phx/3/
Это работает, но что если мой имя поля имеет тире в нем? – borie88
@IsmailRBOUH Это было прекрасно, спасибо вам большое! & Roko для оригинального ответа тоже – borie88
@ borie88 тире? вы используете двойные кавычки: 'addVal ({" foo-baz ":" Hello ", bar:" World "})' –