Итак, у меня есть динамическая форма, состоящая из двух столбцов. У одного есть имя задания, а у другого есть поле ввода, в котором пользователь может ввести их в описание задания.Проверка переменной для нескольких входов после события onChange
while($install_table_r = tep_db_fetch_array($install_table_query))
{
echo'
<tr class="dataTableRow">
<td class="dataTableContent">
<input type="text" id="job_name" name="job_name"
value="'.$install_table_r['name_of_job'].'" disabled />
</td>
<td class="dataTableContent">
<input type="text" name="job_desc" value="'.$install_comment['comment'].'"
onChange="insertCommentInstall(this.value,)" />
</td>
</tr>
';
}
Так как вы можете видеть, у меня есть цикл while, который заполняет эту форму. Таким образом, у потенциально может быть много полей ввода, которые вы можете использовать для описания заданий.
Проблема, с которой я сталкиваюсь, заключается в том, что когда я обрабатываю эту форму с помощью AJAX, которую я создал. Javascript просто захватывает последнее задание в списке и использует его как имя задания. Таким образом, по сути, он правильно захватывает поле ввода, просто помещает его в неправильный ряд.
Это javascript, обрабатывающий это изменение.
var job = document.getElementsByNames("job_name").value;
var comment = document.getElementsByNames("job_desc").value;
var url = "<?php echo FILENAME_ORDERS_EDIT_AJAX; ?>?action=insert_comment_install&oID=<?php
echo $_GET['oID']; ?> &new_comment=" + value + "&jobname=" + job;
Я знаю, что я должен быть захватывая элементы с getElementByNames, но я просто не знаю, как паре комментарий с соответствующей работой, которую он должен пойти с. Поэтому, если кто-то комментирует рядом с полем ввода для граничного задания, комментарий должен быть сопряжен с именем задания «Гранитное задание» в базе данных. Вместо этого в настоящее время он просто будет спарен с последней работой в списке, который является «Assembly Assembly».
Любая помощь будет оценена по достоинству.
Я никогда не слышал о 'getElementsByNames'. Это должно быть 'getElementsByName'. Кроме того, это вернет нодлист всех выбранных элементов в переменную 'job', то есть вам нужно будет использовать правильный индексный номер, чтобы получить значение, которое вы ищете. – icecub
insertCommentInstall где эта функция? –