2014-06-25 6 views
67

मैं एक चेकबॉक्स पर एक घटना श्रोता मिल गया है:jQuery का उपयोग कर .change घटना ट्रिगर नहीं करता .prop बदलने

<input type="checkbox" name="something"> 

मेरे घटना श्रोता:

$('input[type="checkbox"][name="something"]').change(function() { 
    //DO SOMETHING 
}); 

मैं एक घटना श्रोता कि बदल जाता है चेकबॉक्स का .prop:

$('#button').click(function() { 
    $('input[type="checkbox"][name="something"]').prop("checked", false); 
}); 

जब मैं चेकबॉक्स DO SOMETHING चलाता की जाँच करें। जब मैं #button पर क्लिक करें, .prop परिवर्तन और मैं चेकबॉक्स नेत्रहीन अचिह्नित देखते हैं, लेकिन DO SOMETHING शुरू हो न हो ...

कुछ मैं अनदेखी कर रहा हूँ?

+0

के संभावित डुप्लिकेट ([चेकबॉक्स() प्रोप के साथ की जाँच जुड़ी घटनाओं आग नहीं है "परिवर्तन" करने के लिए] http://stackoverflow.com/questions/19505011/checkbox-checked-with-prop-does-not-fire-events-attached-to-change) – GSerg

उत्तर

104

आप संपत्ति को बदलने के बाद .change() या .trigger("change") उपयोग करने की आवश्यकता:

$('input[type="checkbox"][name="something"]').prop("checked", false).change(); 

Working Demo

+2

मैंने सोचा कि 'प्रोप' ने परिवर्तन घटना पीढ़ी का ख्याल रखा है? –

+7

अंत में '.change()' जोड़ना काम नहीं किया। – fuzzybabybunny

+0

@TrueBlueAussie: नहीं यह नहीं है ... यह http://jsfiddle.net/kzWgD/ –

संबंधित मुद्दे