быстрый вопрос javascript о выпадающем меню с действием onchange - PullRequest
0 голосов
/ 23 мая 2011

Используя smarty, взгляните на код ниже:

            <select name="unitSelect" class="uniForm" id="unitSelect" style="width:1250px;" onchange="location.href='{$ABS_MANAGER_URL}/managerEditUnit.php?unit_id={$set[i].id}'; return false">
                    <option value="0" selected="selected">Select Unit</option>
                {section name=i loop=$set}
                    <option value="{$set[i].id}" >{$set[i].unitName}</option>
                {/section}
            </select>

То, что я хочу, это значение в параметрах для загрузки в вызов select onchange "", для переменной GET ... Я не могу понять, как это сделать с помощью javascript ... есть идеи у кого-нибудь?

Спасибо.


UPDATE

Это было нелегко, но между несколькими вашими комментариями я получил один рабочий, спасибо всем:

<script type="text/javascript">
    function viewUnit(value) {

        var url = "managerEditUnit.php?unit_id="; 
        url += value;
        document.location.href=url;
    }
</script> 

Ответы [ 4 ]

2 голосов
/ 23 мая 2011

Вот пример:

<select onchange="alert(this.options[this.selectedIndex].value)">
    <option value="0">Option 1</option>
    <option value="1">Option 2</option>
    <option value="2">Option 3</option>
</select>

РЕДАКТИРОВАТЬ:

Извините за дубликат.

Если вы хотите использоватьэто с функцией:

function yourfunction(value) {
    alert(value);
}

И конечно же измените alert в приведенном выше HTML на yourfunction.

2 голосов
/ 23 мая 2011

Вы можете получить значение в объекте select, выполнив это в событии onchange:

onchange="alert(this.options[this.selectedIndex]"

Поскольку вы можете получить это значение, вы можете динамически создать свой запрос GET. Некоторым нравится это:

onchange="document.location.href='somepage.php?id=' this.options[this.selectedIndex];"

jQuery делает это еще проще, вы можете просто использовать:

onchange="alert($(this).val())"
1 голос
/ 23 мая 2011

Это должно сделать это:

<select onchange="yourfunction(this.options[this.selectedIndex].value);">    
0 голосов
/ 11 марта 2012

Я мог бы предложить вам использовать следующее для получения значения при выборе опции из выпадающего списка ->

this.value

переход на ваш javascript означает ->

onchange="JavaScript:userDefinedFunction(this.value);"

например ::

select name='state' onchange="JavaScript:userDefinedFunction(this.value);"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...