HTML-форма с флажками и редактируемыми полями ввода

Позвольте мне попытаться описать то, что я пытаюсь достичь:

Я хочу отображать форму с помощью таблицы, в которой каждая строка имеет флажок, уникальный идентификатор элемента в этой строке и предлагаемое количество. Количество можно редактировать, и пользователь может выбрать подмножество строк.

Форма отправит следующее: Для каждой выбранной строки уникальный идентификатор и количество будут отправлены на сервер.

Я могу каким-то образом представить себе использование javascript для «активации» отправляемых строк, но я не могу обдумать решение для соединения пары UID + Qty.

Любые предложения приветствуются!

Спасибо.


person edarroyo    schedule 19.02.2012    source источник


Ответы (2)


Вы можете сделать такую ​​форму:

<?php
$width = 10; 
$height = 5;
echo '<form ...>';
echo '<table>';
for($i=0;$i<$height;$i++){
    echo "<tr>";
    for($j=0;$j<$width;$j++){
    echo <td>';
    echo '<input type="checkbox" name="'.$i.'x'.$j.'" />';
    echo '<input type="text" name="'.$i.'x'.$j.'value" value="la valeur" />';
    echo '</td>';
    }
    echo '</tr>';
    }
echo '</table>';
echo '<submit...>';
echo '</form>';

А затем в части лечения вы можете сделать два цикла, проверяя, установлен ли флажок, и обновлять значение, если оно

person lpostula    schedule 19.02.2012

Если ваш серверный язык поддерживает это, я бы рекомендовал использовать синтаксис массива. например

<tr>
 <td>
  <input type="checkbox" />
 </td>
 <td>
  <span>NAME</span>
 </td>
 <td>
  <input type="text" name="qty[5]" value="10" />
 </td>
</tr>

Затем языку на стороне сервера просто нужно будет пройти через массив POSTed qty, где индекс - это UID, а значение - количество. Эта модель может быть расширена так:

<tr>
 <td>
  <input type="checkbox" />
 </td>
 <td>
  <input type="text" name="name[5]" value="Name" />
 </td>
 <td>
  <input type="text" name="qty[5]" value="10" />
 </td>
</tr>
person Shad    schedule 19.02.2012