मैं <input type="checkbox" />
jQuery के साथ चेक / अनचेक इवेंट कैसे पकड़ सकता हूं ?
मैं <input type="checkbox" />
jQuery के साथ चेक / अनचेक इवेंट कैसे पकड़ सकता हूं ?
जवाबों:
<input type="checkbox" id="something" />
$("#something").click( function(){
if( $(this).is(':checked') ) alert("checked");
});
संपादित करें: ऐसा करने पर पकड़ नहीं होगी जब चेकबॉक्स एक क्लिक के अलावा अन्य कारणों से बदलता है, जैसे कीबोर्ड का उपयोग करना। इस समस्या से बचने के लिए change
इसके बजाय सुनो click
।
प्रोग्राम को चेक / अनचेक करने के लिए, मेरा चेकबॉक्स परिवर्तन इवेंट ट्रिगर क्यों नहीं है पर एक नज़र डालें ?
change
क्लिक के बजाय टन सुन सकते हैं। मैं इस सवाल का जवाब अद्यतन करने कर रहा हूँ
यदि हम इनपुट चेकबॉक्स से जुड़े हैं, तो क्लिक एक लेबल को प्रभावित करेगा?
मुझे लगता है कि .change () फ़ंक्शन का उपयोग करना बेहतर है
<input type="checkbox" id="something" />
$("#something").change( function(){
alert("state changed");
});
चेकबॉक्स की स्थिति का निर्धारण करने के लिए : चेक किए गए चयनकर्ता का उपयोग करें :
$('input[type=checkbox]').click(function() {
if($(this).is(':checked')) {
...
} else {
...
}
});
JQuery 1.7+ उपयोग के लिए:
$('input[type=checkbox]').on('change', function() {
...
});
इसे प्राप्त करने के लिए नीचे दिए गए कोड स्निपेट का उपयोग करें।
$('#checkAll').click(function(){
$("#checkboxes input").attr('checked','checked');
});
$('#UncheckAll').click(function(){
$("#checkboxes input").attr('checked',false);
});
या आप एकल चेक बॉक्स के साथ भी ऐसा कर सकते हैं:
$('#checkAll').click(function(e) {
if($('#checkAll').attr('checked') == 'checked') {
$("#checkboxes input").attr('checked','checked');
$('#checkAll').val('off');
} else {
$("#checkboxes input").attr('checked', false);
$('#checkAll').val('on');
}
});
डेमो के लिए: http://jsfiddle.net/creativegala/hTtxe/
मेरे अनुभव में, मुझे इस घटना की वर्तमान स्थिति का लाभ उठाना पड़ा है:
$("#dingus").click( function (event) {
if ($(event.currentTarget).is(':checked')) {
//checkbox is checked
}
});
MSIE के साथ सर्वोत्तम संगतता के लिए क्लिक इवेंट का उपयोग करें
$(document).ready(function() {
$("input[type=checkbox]").click(function() {
alert("state changed");
});
});
$(document).ready(function(){
checkUncheckAll("#select_all","[name='check_boxes[]']");
});
var NUM_BOXES = 10;
// last checkbox the user clicked
var last = -1;
function check(event) {
// in IE, the event object is a property of the window object
// in Mozilla, event object is passed to event handlers as a parameter
event = event || window.event;
var num = parseInt(/box\[(\d+)\]/.exec(this.name)[1]);
if (event.shiftKey && last != -1) {
var di = num > last ? 1 : -1;
for (var i = last; i != num; i += di)
document.forms.boxes['box[' + i + ']'].checked = true;
}
last = num;
}
function init() {
for (var i = 0; i < NUM_BOXES; i++)
document.forms.boxes['box[' + i + ']'].onclick = check;
}
HTML:
<body onload="init()">
<form name="boxes">
<input name="box[0]" type="checkbox">
<input name="box[1]" type="checkbox">
<input name="box[2]" type="checkbox">
<input name="box[3]" type="checkbox">
<input name="box[4]" type="checkbox">
<input name="box[5]" type="checkbox">
<input name="box[6]" type="checkbox">
<input name="box[7]" type="checkbox">
<input name="box[8]" type="checkbox">
<input name="box[9]" type="checkbox">
</form>
</body>