Удаление флажка на переключателе jQuery

Я использую:

var selection;

$ ('a.enter'). click (function () {

выбор = $ ('ввод: проверено'). val ();

});

Чтобы определить выбор для проверяемого переключателя.

Затем при запуске такого события, как:

$ ('a.exit'). click (function () {

$ ('input'). prop ('проверено', ложь);

});

Я снимаю проверку .. Затем, когда я снова запускаю первое событие, вместо выбора, равного значению отмеченной радиокнопки, оно возвращает undefined

Любые идеи?

Спасибо!


person spez86    schedule 16.08.2011    source источник


Ответы (3)


Возможно, я не совсем понимаю описываемый вами процесс, но, если я правильно понимаю, когда вы:

запустить первое мероприятие снова

$('input:checked').val(); вернет undefined, поскольку отмеченных входов нет - вы просто сняли их все с помощью $('input').prop('checked', false);.

Какого результата вы пытаетесь достичь?

person doctororange    schedule 16.08.2011

После того, как вы нажали a.exit $ ('input: checked'), верните объект jQuery без элементов. .val() для объекта jQuery без элементов всегда возвращает undefined, потому что не удается найти свойство value

person buryat    schedule 16.08.2011

$('a.enter').click(function() {

choice = $('input:checked').val();

});

choise здесь не ГЛОБАЛЬНАЯ переменная.

Сделайте демо и покажите URL. Или простой jsfiddle, пожалуйста.

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

Похоже, я намеренно пропустил верхнее объявление, чтобы некоторые пользователи могли высказывать полемические комментарии.

Собственно неважно, декларируете вы это или нет.

Когда вы второй раз нажимаете a.enter, отмеченные поля не отображаются, и вашей переменной не присваивается никакого значения.

Используйте этот код

http://jsfiddle.net/ZE2Pb/

person avetarman    schedule 16.08.2011