Получить идентификатор из выбора с помощью jqTransform (с более чем одним выбором в форме) - PullRequest
0 голосов
/ 17 мая 2011

У меня есть форма с 3 выборами, и я применил к ней jqTransform.

<div class="selects">
<form id="form" class="form_comer" method="post" action="ajax/selects.php">
     <select id="select-local" name="select-local" class="select-index">
    <option selected="selected" value="">'.$select_comer_tipo.'</option>
    <option value="1">'.$select_comer_rest.'</option>
    <option value="2">'.$select_comer_bar.'</option>
    <option value="3">'.$select_comer_cafe.'</option>
     </select>
         <select id="select-ambiente" name="select-ambiente" class="select-index">
    <option value="">'.$select_comer_ambiente.'</option>
    <option value="1">'.$select_comer_animado.'</option>
    <option value="2">'.$select_comer_silencioso.'</option>
    <option value="3">'.$select_comer_glamouroso.'</option>
    </select>
        <select id="select-precio" name="select-precio" class="select-index">
    <option value="">'.$select_comer_precio.'</option>
    <option value="1">'.$select_comer_p1.'</option>
    <option value="2">'.$select_comer_p2.'</option>
    <option value="3">'.$select_comer_p3.'</option> 
    </select>                       
</form>
</div>

У меня есть функция, которая работает, когда я нажимаю на любой из 3 вариантов выбора.Я хочу, чтобы он передавал функции ajax как выбранное значение, так и идентификатор выбранного мной выбора.Моя переменная "sel" - это то, что здесь не работает, она получает только идентификатор первого из них.

$(".form_comer div.jqTransformSelectWrapper ul li a").click(function(){
    var sel= $("select.jqTransformHidden").attr('id');

    var index= $(this).attr('index');
    var value = $('select.jqTransformHidden option:eq('+index+')').attr('value');

        $.ajax({
            type: "POST",
            url: $("#form").attr("action"),
            data: "value=" + value + "&sel=" + sel,
            dataType: 'html',
            success: function(msg) {
                alert(msg);
            }

        });        

    return false; //prevent default browser action
});

1 Ответ

1 голос
/ 18 мая 2011

Это может быть не очень элегантно, но это то, что мне было нужно:

...