У меня есть массив текстовых полей, которые динамически создаются в PHP. У меня есть 100 текстовых полей для CustomerIDs и 100 текстовых полей для CustomerEmails, и кроме того у меня есть 100 кнопок обновления.
Всякий раз, когда я нажимаю кнопку обновления, он должен обновлять только эту запись определенного индекса.
Начальные значения текстовых полей поступают из базы данных.
Проблема в том, что я не знаю, как получить индекс конкретного texbox.
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
$rowCounter = $rowCounter + 1;
echo '<tr>';
echo '<td><input name="txtRowCounter" id="txtRowCounter" type="text" value ="' . $rowCounter .'" /> </td>';
echo '<td>' . $row['CustomerID'] . '</td>';
echo '<td><input name="txtEmail" id="txtEmail" type="text" value ="' . $row['CustomerEmail1'] .'" /> </td>';
echo '<td><input id="btnUpdate" type="submit" name="btnUpdate" value = "Update" onclick="updateButton( document.getElementsByName(\'txtEmail\')[' . $rowCounter . '].value)" /> </td>';
echo '</tr>';
}
Ну, здесь есть несколько вариантов. Вы можете создать новую форму для каждой отправляемой записи, но я думаю, что было бы проще просто дать вашей кнопке имя, включающее ваш $row['CustomerID']
,
Например, дайте вашей кнопке имя:
'... name="btnUpdate_"'.$row['CustomerID'].' value =...';
Тогда вы можете просто разобрать его на стороне процессора.
Других решений пока нет …