Сделать ссылку в опции комбобокс

Я пытаюсь сделать ссылку в выпадающих списках, но получаю ошибку.

Вот моя функция JS:

<script type="text/javascript">
function handleSelect(elm)
{
    window.location = elm.value+".php";
}
</script>

Вот форма комбобоксов

<select name="Pilihan">
    <option value="" selected href="view1.php">- Item -</option>
    <option value="" selected href="view2.php">- Budg -</option>
    <option value="" selected href="view3.php">- Dept -</option>
    <option value="" selected href=>- Silahkan Pilih -</option>
</select>

2 ответа

Решение

Похоже, вы можете пропустить это:

<select name="Pilihan" onchange="handleSelect(this)">

Или что-то типа того.

Кроме того, вы, вероятно, не хотите, чтобы ваши параметры по умолчанию были все selected,

ОБНОВИТЬ

Теперь я вижу проблему, вы пытаетесь использовать option значение, но вы, кажется, хотите на самом деле использовать href тега опции. Вы можете попробовать:

<option value="view1.php">- Item -</option>
<option value="view2.php">- Budg -</option>

Тогда один из предложенных методов привязки событий.

href не является допустимым атрибутом для тега опции, и вы не можете поместить ссылки в выпадающий список. Однако для этого вы можете использовать магию javascript, например:

<select name="Pilihan" onchange="document.location = this.options[this.selectedIndex].value;">
   <option value="view1.php">- Item -</option>
   <option value="view2.php">- Budg -</option>
   <option value="view3.php">- Dept -</option>
</select>

Или использовать обработчики событий:

<select name="Pilihan">
   <option value="view1.php">- Item -</option>
   <option value="view2.php">- Budg -</option>
   <option value="view3.php">- Dept -</option>
</select>

<script type="text/javascript">
    document.getElementsByName('Pilihan')[0].onchange = function() {
        document.location.href = this.options[this.selectedIndex].value;
    }
</script>
Другие вопросы по тегам