2012-03-15 4 views
0

Я вытаскивая запись из базы данных и вставки их в раскрывающемся списке, как это:Опция на выпадающем списке в качестве якоря

echo "<select>"; 
while ($drow = mysql_fetch_assoc($request)) 
{ 
    echo "<option>" . $drow['id'] . "</option>"; 
} 
echo "</select>"; 

Это работает, но мне нужно, чтобы быть в состоянии нажать на опции на выпадающем меню и сделать это ссылка просто нравится:

<a href="Record1Here">Record1Here</a> 
<a href="Record2Here">Record2Here</a> 
<a href="Record3Here">Record3Here</a> 

UPDATE: Последний код:

<script> 

function doSomething() { 
    var currentval = this.options[this.selectedIndex].value; 
    // you could navigate away at that point ? 
    window.location = currentval; 
} 
</script> 

... 

echo "<select onchange='doSomething();'>"; 
while ($drow = mysql_fetch_assoc($request)) 
{ 

    echo "<option value=\"view.php\">" . $drow['id'] . "</option>"; 

} 
echo "</select>"; 
+1

Возможно ли это с помощью HTML? – h00ligan

+0

@ h00ligan: Это не так. Вам нужен JavaScript. –

+1

Также для OP. Я не рекомендую вам это делать. Имейте кнопку отправки и правильно перемещайте пользователя. Неожиданно из выбранного входа перенаправить страницу. –

ответ

4

Вы не можете размещать якоря на опции в выберите список.

Что вы можете сделать, это использовать JavaScript, а затем сделать что-то на change случае выбора списка:

echo "<select onchange='doSomething(this);>'; 

затем в JavaScript сделать что-то на основе выбранного значения:

function doSomething(elem) { 
    var currentval = elem.options[elem.selectedIndex].value; 
    // you could navigate away at that point ? 
    window.location = currentval; 
} 

Example here

вы можете обновить свой код PHP, чтобы включить значение в каждый option:

echo "<option value=\"urlhere.php\">" . $drow['id'] . "</option>"; 
+0

Протестировано это, но onchange мой url получает «undefined», добавленный к нему – Satch3000

+0

@ Satch3000 обновил первую строку функции 'doSomething' - попробуйте, что – ManseUK

+0

проверил это изменение, но ничего не делает сейчас – Satch3000

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