मैं jQuery या शुद्ध JS का उपयोग करके किसी दस्तावेज़ में सभी चेकबॉक्स कैसे रीसेट कर सकता हूं?
मैं jQuery या शुद्ध JS का उपयोग करके किसी दस्तावेज़ में सभी चेकबॉक्स कैसे रीसेट कर सकता हूं?
जवाबों:
यदि आप का अर्थ है कि सभी चेकबॉक्सों से 'चेक' की स्थिति को कैसे हटाया जाए:
$('input:checkbox').removeAttr('checked');
यदि आप फ़ॉर्म की रीसेट सुविधा का उपयोग करना चाहते हैं, तो आप इसका उपयोग करना बेहतर समझेंगे:
$('input[type=checkbox]').prop('checked',true);
या
$('input[type=checkbox]').prop('checked',false);
लगता है removeAttr()
द्वारा रीसेट नहीं किया जा सकता है form.reset()
।
मैंने पहले भी इसका इस्तेमाल किया है:
$('input[type=checkbox]').prop('checked', false);
ऐसा लगता है कि .attr और .removeAttr कुछ स्थितियों के लिए काम नहीं करता है।
संपादित करें: ध्यान दें कि jQuery v1.6 और उच्चतर में, आपको .prop('checked', false)
अधिक क्रॉस-ब्राउज़र संगतता के लिए उपयोग करना चाहिए - https://api.jquery.com/prop देखें
यहां टिप्पणी करें: jQuery या शुद्ध जेएस का उपयोग करके सभी चेकबॉक्स कैसे रीसेट करें?
var clist = document.getElementsByTagName("input");
for (var i = 0; i < clist.length; ++i) { clist[i].checked = false; }
$('input:checkbox').each(function() { this.checked = false; });
विपरीत करने के लिए, देखें: आईडी / कक्षा के सभी चेकबॉक्स चुनें
$(":checkbox:checked").each(function () {
this.click();
});
चेक बॉक्स को अनचेक करने के लिए, विपरीत करने के लिए अपने तर्क को घुमाएं
आप इस बात के चयनात्मक हो सकते हैं कि आपके पेज का कौन सा div या हिस्सा चेकबॉक्स हो सकता है और कौन सा नहीं। मैं उस परिदृश्य में आया था जहाँ मेरे पृष्ठ में दो रूप हैं और एक में पूर्व निर्धारित मूल्य (अद्यतन के लिए) हैं और अन्य को नए सिरे से भरने की आवश्यकता है।
$('#newFormId input[type=checkbox]').attr('checked',false);
यह आईडी newFormId के साथ अनियंत्रित के रूप में केवल चेकबॉक्स बनाएगा।
जैसा कि फॉलो स्क्रिप्ट का उपयोग करते हुए टाटू उलेमेन के जवाब में कहा गया है कि यह काम करेगा
$('input:checkbox').removeAttr('checked');
लेकिन, जैसा कि ब्लाकेमॉन की टिप्पणी ने कहा, संस्करण 1.6 के बाद jQuery.prop()
इसके बजाय इसका उपयोग करना बेहतर है
ध्यान दें कि jQuery v1.6 और उच्चतर में, आपको अधिक क्रॉस-ब्राउज़र दर्शन के बजाय .prop ('चेक किया हुआ', गलत) का उपयोग करना चाहिए।
$('input:checkbox').prop('checked', false);
jQuery.each()
इसका उपयोग करते समय सावधानी बरतें क्योंकि इससे प्रदर्शन संबंधी समस्याएं हो सकती हैं। (यह भी, jQuery.find()
उन मामलों में से बचें । इसके बजाय प्रत्येक का उपयोग करें)
$('input[type=checkbox]').each(function()
{
$(this).prop('checked', false);
});
मैंने कुछ ऐसा इस्तेमाल किया
$(yourSelector).find('input:checkbox').removeAttr('checked');
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container check">
<button class="btn">click</button>
<input type="checkbox" name="vehicle" value="Bike">I have a bike<br>
<input type="checkbox" name="vehicle" value="Car">I have a car<br>
<input type="checkbox" name="vehicle" value="Bike">I have a bike<br>
<input type="checkbox" name="vehicle" value="Car">I have a car<br>
</div>
<script>
$('.btn').click(function() {
$('input[type=checkbox]').each(function()
{
this.checked = false;
});
})
</script>
</body>
</html>