2017-02-18 5 views
1

как я могу получить «id» вместо «name», когда я отправлю форму.html 5 datalist value

<input type="text" list='name' name='test1'/> 
       <datalist id="test1"> 
        <?php 
         if(!empty($data)){ 
          foreach($data as $flag){ 
           echo "<option label ='".$flag['id']."' >".$flag['name']."</option>"; 
          } 
         }else{ 
          echo "<option> empty </option>"; 
         } 
        ?> 
       </datalist> 

Я попытался использовать значение = $ флаг [ «ID»], но я все еще получаю «имя», когда я представить его.

+0

Параметр 'id' не отправляется на сервер. Только «имя» и «значение». – user6003859

ответ

0

id не отправляется на сервер с регулярной отправкой формы. Только атрибуты name - и value.

Если вы действительно хотите получить id s, у вас может быть скрытый элемент <input> с массивом для значения, содержащим все необходимые id s, которые вы хотите.

Вот пример:

HTML

<form method="post"> 
    <input type="text" name="firstname" id="inp1" /> 
    <input type="text" name="surname" id="inp2" /> 
    <input type="hidden" name="ids[]" value="inp1" /> 
    <input type="hidden" name="ids[]" value="inp2" /> 
    <input type="submit" /> 
</form> 

PHP

foreach($_POST['ids'] as $id) 
{ 
    echo '<option label="' . $id . '">' . array_search($id, $_POST) . '</option>'; 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^