javascript - Как да проверим дали е поставена отметка в jQuery? - medican.info
Трябва да проверя свойствата на checked флаг и да изпълнявам действие, основано на провереното свойство, използвайки jQuery.
Например, ако е поставена отметка за възраст, трябва да покажа текстово поле за въвеждане на възрастта, в противен случай да скрия текстовото поле.
Но следният код по подразбиране връща false :
Как да извлечем успешно checked свойство?
23 мая '09 в 18:16 2009-05-23 18:16 Прасад е даден на 23 май 09 в 18:16 2009-05-23 18:16
@ 58 отговора
Където isAgeSelected е контролният идентификатор.
Освен това @ karim79 отговорът работи добре. Не съм сигурен какво съм пропуснал, когато го тествах.
Забележка. Този отговор използва Microsoft Ajax, а не jQuery.
24 мая '09 в 8:30 2009-05-24 08:30 отговорът е даден Prasad 24 май'09 в 8:30 2009-05-24 08:30
Как мога да изпълня заявка за проверен имот?
checked свойство на елемента за отметка DOM ще ви даде checked състояние на елемента.
Като се има предвид съществуващия Ви код, можете да направите това:
Въпреки това има по-красив начин да направите това с помощта на toggle :
23 мая '09 в 18:20 2009-05-23 18:20 отговорът е даден от karim79 на 23 май'09 в 18:20 2009-05-23 18:20
Използвайте функцията jQuery е () :
22 июня '11 в 13:14 2011-06-22 13:14 отговорът е даден на Bhanu Krishnan на 22 юни '11 в 13:14 ч. 2011-06-22 13:14
Използване на jQuery> 1.6
Използване на новия метод на собственост:
23 июня '11 в 20:29 2011-06-23 20:29 отговорът е даден от SeanDowney на 23 юни '11 в 20:29 2011-06-23 20:29
jQuery 1.5 и по-долу
Всяка версия на jQuery
Всички кредити са Xian .
20 мая '14 в 23:03 2014-05-20 23:03 отговорът е даден ungalcrys Май 20 '14 в 23:03 2014-05-20 23:03
Използвам го и работи абсолютно добре:
Забележка. Ако е отметнато, тя ще върне истина, в противен случай не е дефинирана, затова е най-добре да проверите стойността TRUE.
19 авг. Отговорът е даден Pradeep 19 август. 2010-08-19 16:38 '10 в 16:38 2010-08-19 16:38
29 авг. отговорът е даден Lalji Dhameliya 29 август. 2016-08-29 14:38 '16 в 14:38 2016-08-29 14:38
Тъй като jQuery 1.6, поведението на jQuery.attr() е променило, и на потребителите се препоръчва да не я използват за извличане на състоянието, маркирано от елемент. Вместо това трябва да използвате jQuery.prop() :
Две други функции:
27 апр. отговорът е даден от Салман А 27 април. 2012-04-27 14:54 '12 в 2:54 pm 2012-04-27 14:54
Ако използвате актуализирана версия на jquery, трябва да използвате метода .prop , за да разрешите проблема си:
$('#isAgeSelected').prop('checked') връща true ако е отметнато, и false ако не е зададен. Потвърдих това и се сблъсках с този въпрос по-рано. $('#isAgeSelected').attr('checked') и $('#isAgeSelected').is('checked') връща undefined , което не е добър отговор на ситуацията. Направете както е показано по-долу.
Надявам се това да помогне :) - Благодаря.
25 авг. отговор, даден от Rajesh Omanakuttan 25 август. 2013-08-25 06:11 '13 в 6:11 am 2013-08-25 06:11
Използването на манипулатор на събитие Click за свойство checkbox е ненадеждно, тъй като checked свойство може да се промени, докато се изпълнява самият събитието!
В идеалния случай искате да поставите кода си в манипулатор за change събития, например, той се изпълнява всеки път, когато стойността на флага се променя (без значение как се прави).
06 окт. отговорът е даден arviman 06 oct. 2011-10-06 04:12 '11 в 4:12 часа на 2011-10-06 04:12
Реших да публикувам отговор как да направя същото без jQuery. Само защото съм бунтар.
Първо получавате и двата елемента по техния идентификатор. След това присвоявате събитие с отметка в onchange на функция, която проверява дали е поставена отметката и съответно зададете hidden свойство на текстовото поле на възрастта. Този пример използва троичния оператор.
Тук имате цигулка да го проверите.
Ако съвместимостта между браузърите е проблем, предлагам да зададете свойството на CSS display да не е вградено.
По-бавен, но съвместим с различни браузъри.
20 марта '12 в 22:19 2012-03-20 22:19 Отговорът е даден от Октавиан Дамиан на 20 март '12 в 10:19 ч. 2012-03-20 22:19
Мисля, че можете да направите това:
23 мая '09 в 18:34 2009-05-23 18:34 отговорът е даден ксенон 23 май, '09 в 18:34 2009-05-23 18:34
Има много начини да проверите дали е поставена отметка в квадратчето:
Метод за валидиране на JQuery
Проверете пример или документ:
14 окт. отговор, даден на Parth Chavda 14 октомври. 2014-10-14 10:48 '14 в 10:48 2014-10-14 10:48
Аз се сблъсках със същия проблем. Проверих ASP.NET
В jQuery кода използвах следния селектор, за да проверя дали флагът е поставен или не, и изглежда, че работи като чар.
Сигурен съм, че можете да използвате и идентификатора вместо CssClass,
16 дек. Отговорът е даден на Nertim 16 декември 2010-12-16 21:50 '10 в 21:50 2010-12-16 21:50
06 янв. отговорът е даден ашиш аматя 06 януари. 2011-01-06 14:33 '11 в 14:33 2011-01-06 14:33
Това е друг начин да направите същото:
24 авг. отговорът е даден Sangeet Шах 24 август. 2015-08-24 15:19 '15 в 15:19 2015-08-24 15:19
Моят начин да направя това е:
06 февр. Отговорът е даден на Далиус I 06 февруари. 2012-02-06 17:31 '12 в 5:31 pm 2012-02-06 17:31
25 нояб. Отговор, даден от Jumper Pot 25 ноември. 2014-11-25 15:25 '14 в 15:25 2014-11-25 15:25
Можете да използвате този код:
13 окт. отговор, даден от sandeep kumar 13 октомври 2016-10-13 09:03 '16 в 9:03 ч. 2016-10-13 09:03
Връща true ако входът е проверен и false ако не е.
12 февр. отговорът е даден fe_lix_ 12 февруари. 2012-02-12 18:15 '12 в 18:15 ч. 2012-02-12 18:15
Използвайте това:
Ако е отметнато, дължината е по-голяма от нула.
27 июля '16 в 12:46 2016-07-27 12:46 отговорът е даден от Хамид НК на 27 юли в 12:46 ч. 2016-07-27 12:46
И двете трябва да работят.
28 апр. Отговорът е даден от Мохамед Авайс на 28 април 2016-04-28 15:07 '16 в 15:07 2016-04-28 15:07
Този пример е за бутона.
03 янв. отговорът е даден от usayee Jan 03 2014-01-03 13:38 '14 в 13:38 2014-01-03 13:38
Основният отговор не направи това за мен. Това обаче се случи:
По принцип, когато се натисне елементът # li_13, той проверява дали елементът # (който е отметка) се съгласува с .attr('checked') функцията. Ако това е след това елементът fadeIn #saveForm, и ако не е елементът fadeOut saveForm.
10 дек. Отговорът е даден MDMoore313 10 декември. 2012-12-10 08:02 '12 в 8:02 2012-12-10 08:02
1) Ако вашата HTML маркировка:
Ако се използва опора:
2) Ако вашата HTML маркировка:
Използвани опори:
30 окт. отговорът е даден от Somnath Kharat 30 октомври. 2013-10-30 15:43 '13 в 15:43 2013-10-30 15:43
Превключвател: 0/1 или повече
08 янв. отговор, даден от user2385302 Jan 08 2015-01-08 16:10 '15 в 16:10 2015-01-08 16:10
06 сент. Отговорът е даден от Nishant Kumar Sep 06 2013-09-06 09:43 '13 в 9:43 2013-09-06 09:43
Въпреки, че сте предложили решение на JavaScript за проблема си ( textbox показва, когато е поставена checked ), този проблем може да бъде решен само с помощта на css . С този подход формулярът ви работи за потребители, които са деактивирали JavaScript.
Ако приемем, че имате следния HTML:
Можете да използвате следните CSS за постигане на желаната функционалност:
В други сценарии може да помислите за подходящите CSS селектори.
Ето един скрипт, показващ този подход .
22 авг. Отговорът е даден от Ormoz на 22 август. 2015-08-22 22:09 '15 в 22:09 часа 2015-08-22 22:09
10 июня '13 в 16:12 2013-06-10 16:12 Отговорът е даден от ijarlax 10 юни '13 в 16:12 2013-06-10 16:12
Сигурен съм, че това не е някакво откровение, но не видях всичко това в един пример:
Селектор за всички маркирани полета (на страница):
15 нояб. Отговорът е даден Цонев 15 ноември. 2013-11-15 13:50 '13 в 13:50 2013-11-15 13:50
Други въпроси за JavaScript тагове jquery dom html checkbox или Задайте въпрос