Как получить возвращаемое значение <select>, которое использует плагин NiceForm - PullRequest
0 голосов
/ 09 марта 2012

Я использовал плагин под названием niceform NiceForms , и он изменяет мои элементы формы на теги <a> и <li>. Мне трудно получить возвращаемое значение выбранного элемента.

см. Мой jsbin здесь: http://jsbin.com/ufoxuc

$(function(){

    $("#gender").change(function () {
       alert($(this).val());
    });

});

Пожалуйста, помогите. спасибо!

Ответы [ 3 ]

4 голосов
/ 09 марта 2012

Решение простое, просто выберите ребенка по вашему выбору и получите доступ к значению

$("#gender").change(function () {
   var value = $("#gender option:selected").val();
   alert(value);
});

Надеюсь, что это поможет

0 голосов
/ 09 марта 2012

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

Отредактируйте исходный файл niceforms.js и замените следующую строку (вероятно, строкой 544):


el.lnk._onclick = el.onclick || function () {};

//WITH following

el.lnk._onclick = el.onclick || function () {
    if (this.ref.oldClassName.indexOf("NFOnChange") > -1){
        this.ref.options[this.pos].selected = "selected";
        //Call the original onchange event
        this.ref.onchange();
    }
};

После этого вам необходимо добавитьКласс NFOnChange для выбранного тега, например:


<select size="1" name="gender" id="gender" class="NFOnChange" onchange="yourFunction()">

Вот как мне удалось заставить его работать.Надеюсь, это поможет

0 голосов
/ 09 марта 2012

На самом деле выбора нет, они просто <div> оформлены как <select>, поэтому функция change() никогда не срабатывает. Вы уверены, что плагин не предлагает перехват для прослушивания события change()?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...