Пресеты для переключателей с помощью jQuery - PullRequest
0 голосов
/ 24 января 2012

как установить пресеты для радиокнопок с помощью jQuery?

Вот простой пример: http://jsfiddle.net/EpQgr/

<select>
   <option>option 1</option>
   <option>option 2</option>
</select>

<div>
    <input id="radio1_0_0" type="radio" name="radio1" value="1" />x
    <input id="radio1_0_1" type="radio" name="radio1" value="2" />y
    <input id="radio1_0_2" type="radio" name="radio1" value="3" />z
</div>
<div>
    <input id="radio2_0_0" type="radio" name="radio2" value="1" />x
    <input id="radio2_0_1" type="radio" name="radio2" value="2" />y
    <input id="radio2_0_2" type="radio" name="radio2" value="3" />z
</div>

Предустановленные параметры должны быть примерно такими:

//option 1
$("#radio1_0_1, #radio2_0_2").prop("checked",true);

//option 2
$("div input:first-child").prop("checked",true);

Ответы [ 2 ]

1 голос
/ 24 января 2012

измените свой HTML-код следующим образом:

<select>
   <option value="">Choose a preset</option>    
   <option value="#radio1_0_1, #radio2_0_2">option 1</option>
   <option value="#radio1_0_0, #radio2_0_0">option 2</option>
</select>

и JS

$('select').on('change', function() {
    var v = $(this).val();
    if ($(v).length) {
        $(v).prop("checked", true);
    }
});

Элементы для проверки хранятся в атрибуте value каждой опции.
Это решение избавляет от необходимости вводить каждый пресет в обработчике выбора.Если вам нужно вставить новый пресет, просто добавьте опцию с новым селектором
, см. Jsfiddle: http://jsfiddle.net/8f7Nw/2/

0 голосов
/ 24 января 2012

Возможно, вы хотите, чтобы DropDow использовался для выбора параметров радио

. Попробуйте:

$("select").bind("change", function() {

    // un select all
    $("input[type=radio]").prop("checked",false);

    if($(this).val() === "option 1") {
        //option 1
        $("#radio1_0_1, #radio2_0_2").prop("checked",true);
    }

    if($(this).val() === "option 2") {
        //option 2
        $("div input:first-child").prop("checked",true);        
    }
});

Ваша обновленная скрипка

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