javascript - ng-change not working with radiobutton -
मेरे पास ऐसा कोड है:
& lt; div class = "form-group "& gt; & Lt; div वर्ग = "col-sm-8 col-md-offset-4" & gt; & Lt; label class = "ui-radio" & gt; इनपुट नाम = "radio1" प्रकार = "रेडियो" मान = "ए" एनजी-मॉडल = "$ data.choice" एनजी-परिवर्तन = "ऑनचवाइस ()" & gt ; & lt; अवधि & gt; & lt; / span & gt; & lt; / लेबल & gt; & Lt; / div & gt; & Lt; / div & gt; & Lt; div वर्ग = "फॉर्म-समूह" & gt; & Lt; div वर्ग = "col-sm-8 col-md-offset-4" & gt; & Lt; label class = "ui-radio" & gt; इनपुट नाम = "radio1" प्रकार = "रेडियो" मान = "बी" एनजी-मॉडल = "$ data.choice" एनजी-परिवर्तन = "ऑनचवाइस ()" & gt ; & lt; अवधि & gt; B & lt; / span & gt; & lt; / लेबल & gt; & Lt; / div & gt; & Lt; / div & gt;
जैसा कि आप देख सकते हैं, वहाँ एक $ डेटा.चेस एनजी-मॉडल है, जिसे "ऑन-चाइसेस ()" फ़ंक्शन को ट्रिगर करना चाहिए जब नियंत्रक पर परिभाषित किया गया हो, (एनजी-नियंत्रक पर परिभाषित किया जाता है देखें और ठीक से काम करता है)। समस्या यह है कि फ़ंक्शन ट्रिगर नहीं करता है, लेकिन अगर मैं "$ डेटा" को मिटा देता हूं और इसे एनजी-मॉडल = "पसंद" की तरह छोड़ देता है तो यह पूरी तरह से काम करता है।
$ डेटा केवल एक चर परिभाषित है मुझे $ गुंजाइश पर मैं वास्तव में एक बटन और एनजी-क्लिक से ऑन चाइस () को ट्रिगर कर सकता हूं, लेकिन यह एनजी-परिवर्तन के साथ काम नहीं करता है मुझे लगता है कि यह एनजी-परिवर्तन के साथ एक समस्या है, लेकिन मुझे नहीं पता कि यह क्या हो रहा है।
संपादित करें
ठीक है जैसा कि मैंने देखा है कि यह आसान नहीं है, मैं कुछ जानकारी जोड़ूंगा:
यहां मेरा नियंत्रक है, इसमें $ पैरेंट कंट्रोलर के साथ कुछ इंटरैक्शन शामिल है, इसलिए मुझे नहीं पता कि यह प्रभावित कर सकता है:
$ scope .data = $ क्षेत्र। $ Parent.data; $ Scope.data.choice = $ scope.data.choice || 'वोट'; $ दायरा। मौका = समारोह () {// सामान};
मुझे पता है कि जब तर्क को अयोग्य बनाते समय अजीब लगता है, लेकिन यह महत्वपूर्ण है, तो मैंने कोड को सरल बनाया है। शायद मैं $ scope.data.choice के बजाय सिर्फ $ scope.choice का उपयोग करने के लिए अपना तर्क बदल सकता हूं, लेकिन मैं अभी भी यह जानना चाहता हूं कि यह काम क्यों नहीं कर रहा है।
भले ही "एनजी-मॉडल" वहाँ है, "onChoice" फ़ंक्शन ठीक काम कर रहा है। एक बार अपने नियंत्रक तर्क की जांच करें।
मैंने एक नमूना कार्यक्रम लिखा था। ('Todoapp', [])। नियंत्रक ('टोडो कंट्रोलर', ['$ scope', फ़ंक्शन ($ दायरा) {$ scope.onChoice =
फ़ंक्शन () {चेतावनी ("परिवर्तित।");};}]);
Comments
Post a Comment