Как обновить значение радио с помощью Jquery - PullRequest
0 голосов
/ 05 мая 2009

У меня есть этот HTML-код для радио:

<input type='radio' name='a_27' value='Yes' id='a_27_0' />

<input type='radio' name='a_27' value='No' id='a_27_1' />

Я пытаюсь установить выбранное значение радио, используя этот код:

var field="a_" + this.id;
$('[name="' + field + '"]').val(this.value);
console.log("name is " + field + ", val is " + this.value);

Однако это не работает, при этом ничего не происходит. Вот вывод из консоли Firebug, который появляется после 3-й строки:

имя a_27, val - Да

Есть идеи?

Я бы предпочел метод, который также работал бы на <select>s, поэтому мне не нужно было бы писать дополнительный / отдельный код для радиоприемников и селекторов.

Редактировать: странная проблема. Я заметил, что, хотя мой HTML-код дает другое значение (да / нет), в firebug он показывает, что оба радио имеют значение «да». Если я выберу «нет» и нажму «Сохранить», функция javascript все равно получит «да» вместо «нет». Я что-то не так делаю?

Редактировать 2: Полная функция:

function processMultiOptAnswers()
{
    $.each(multiOpts,function()
        {
            var field="a_" + this.id;
            console.log("name is " + field + ", val is " + this.value);

            $('[name="' + field + '"]').val(this.value);
        }
    );
}

1 Ответ

0 голосов
/ 05 мая 2009

ваш журнал должен быть, если this.value отличается.

$('[name="' + field + '"]').val(this.value);
console.log("name is " + field + ", val is " + $('[name="' + field + '"]').val());

Чтобы сделать его выбранным

$('[name="' + field + '"]').attr("checked", "checked");

Я не проверял это, но вам, возможно, придется удалить этот атрибут из других.

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