2016-03-25 3 views
1

Ребята У меня есть раскрывающийся список, который, когда я нажимаю кнопку, хочу отметить выбранную строку автоматически! мой код до сих пор будет показано ниже, но я не могу заставить его работать ... с '" и т.д.php foreach форма выпадающего меню с выбранным тегом

echo "<select id='form' name=form style='width:auto' class='form-control'> 
<optgroup label='form_name'>"; 

foreach($results as $result)          
{ 
    $ID  = $result->ID; 
    $name = $result->name; 
    $address = $result->address; 

    echo '<option value=$ID '. 

    **if(isset($_GET['form']) && $_GET['form'] == $ID){ .' selected="selected" '. } else { .''. }**        

    .'>'.$ID. ". " .$name. " [" .$address.']</option>'; 

}        
echo "</optgroup> 
</select>; 

заранее спасибо !!!

+0

Вы должны использовать "" котировка $ ID, чтобы использовать '" <параметр значение = $ ID "' ' – kunicmarko20

+0

" <выберите идентификатор = 'форма' имя = форма стиль = "ширина: auto'' вас надо поставить имя в кавычки – kunicmarko20

ответ

0

Вы можете переписать код следующим образом:

echo "<select id='form' name=form style='width:auto' class='form-control'> 
    <optgroup label='form_name'>"; 
    foreach($results as $result)          
    { 
     $ID  = $result->ID; 
     $name = $result->name; 
     $address = $result->address; 

     $selected = (isset($_GET['form']) && $_GET['form'] == $ID) ? ' selected="selected" ' : ''; 

     echo '<option value=$ID ' 
       . $selected 
       .'>'.$ID. ". " .$name. " [" .$address.']</option>'; 
    }        
echo " </optgroup> 
      </select>; 
+0

, они оба были одинаковыми, я полагаю !! –

+0

@ ΗλιαςΤσορομωκος правильно, мы ответили одновременно, поэтому я сеял ответ другого пользователя после размещения моего сообщения, иначе я не отвечу;) –

+0

я дам бонус к этому ответу, потому что он более опрятен от другого, но plz не испытывает никаких затруднений? Спасибо вам обоим !!! –

1

Вы должны использовать оператор ternary. Тернарный оператор - это простой «если потом еще» только в одной строке.

echo '<select id="form" name="form" style="width:auto" class="form-control">'; 
    echo '<optgroup label="form_name">'; 

    foreach ($results as $result) { 
     $id  = $result->ID; 
     $name = $result->name; 
     $address = $result->address; 

     echo '<option value="' . $id . '" ' . (isset($_GET['form']) && $_GET['form'] == $id ? 'selected="selected"' : '') . '>' . $id . '. ' . $name . ' [' . $address . ']</option>'; 
    } 

    echo '</optgroup>'; 
echo '</select>'; 
Смежные вопросы