मेरे पास ऑटोपोस्टबैक के साथ एक एएसपी.Net रेडियोबटन सूची नियंत्रण सही है। मेरे पास एक ऑन-सिलेटेड इंडेक्स चेंज फ़ंक्शन भी है जिसे जब भी कोई उपयोगकर्ता चयन बदलता है तब कहा जाता है। अंत में, उपयोगकर्ता जानकारी इस पर नियंत्रण के लिए अनुरोध किया प्रदान करने के लिए आवश्यक है, इसलिए मैं जब उपयोगकर्ता ऊपर page--एएसपी.Net AJAX UpdatePanel को चुनने में विफल रहता है चयनित इंडेक्स चेंज इवेंट
<asp:RadioButtonList ID="rblHighestDegree" runat="server" AutoPostBack="true"
onselectedindexchanged="rblHighestDegree_SelectedIndexChanged">
<asp:listitem Runat="server" Text="Master's Degree" Selected="True" />
<asp:listitem Runat="server" Text="Doctorate" />
</asp:RadioButtonList>
पर आता है कोड नमूने में, एक डिफ़ॉल्ट चयन है जब डिफ़ॉल्ट से उपयोगकर्ता स्विच चयन (उदाहरण के लिए, "मास्टर डिग्री") एक अलग विकल्प (उदाहरण के लिए, "डॉक्टरेट") पर, तो चयनित इंडेक्स चेंज इवेंट ट्रिगर किया जाता है। फिर, यदि उपयोगकर्ता अपना दिमाग बदलता है, और बाद में मूल डिफ़ॉल्ट विकल्प का चयन करता है, तो चयनित इंडेक्स चेंज ईवेंट फिर से ट्रिगर होता है। यह वांछित और अपेक्षित के रूप में ठीक काम करता है।
मैं एक दूसरे नियंत्रण है कि मैं सक्षम या अक्षम, ऊपर चयन के आधार पर, कोड-पीछे में ...
<asp:ScriptManager ID="scriptmanager1" runat="server" />
<asp:UpdatePanel ID="updatepanel1" runat="server">
<ContentTemplate>
<asp:RadioButtonList ID="rdlYearsOfStudy" runat="server" Enabled="false">
<asp:listitem Runat="server" Text="Less than 3 years" />
<asp:listitem Runat="server" Text="3 - 4 years" />
<asp:listitem Runat="server" Text="5 - 6 years" />
</asp:RadioButtonList>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="rblHighestDegree" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
समस्या मैं आ रही हैं केवल तब होता है केवल के बाद मैं रखा है एएसपी.Net AJAX UpdatePanel के भीतर यह दूसरा नियंत्रण एक एसिंक्रोनस पोस्टबैक सक्षम करने के लिए (ऊपर दिखाया गया है)। एक बार जब मैंने ऐसा किया, तो मूल रेडियोबटन सूची नियंत्रण केवल तब पोस्टबैक होगा जब मैं एक सूची Item चुनता हूं जो डिफ़ॉल्ट रूप से चयनित होता है जब उपयोगकर्ता पृष्ठ पर पहुंचे। यदि उपयोगकर्ता बाद में मूल डिफ़ॉल्ट चयन का चयन करता है, तो पोस्टबैक नहीं होता है।
स्पष्टीकरण के लिए, यदि मैं एएसपी.Net AJAX UpdatePanel में लागू दूसरे नियंत्रण को रखे बिना पोस्टबैक करता हूं, तो चयनित इंडेक्स चेंज किए गए काम इससे कोई फर्क नहीं पड़ता कि कौन से रेडियोबटन सूची सूची उपयोगकर्ता द्वारा चुने गए हैं। दूसरी ओर, जब मैं AsyncPostBackTrigger को लागू करने के लिए UpdatePanel के अंदर नियंत्रण रखता हूं, तो पोस्टबैक केवल गैर-डिफ़ॉल्ट सूची आइटम्स के चयन के लिए होता है।
अधिक जानकारी संगत हो सकती है कि मैं माइक्रोसॉफ्ट विजुअल स्टूडियो 2008, और UpdatePanel नियंत्रण है कि मैं उपयोग कर रहा हूँ माइक्रोसॉफ्ट AJAX पुस्तकालय (नहीं ASP.NET AJAX नियंत्रण टूलकिट) का हिस्सा है के साथ कोडिंग कर रहा हूँ है।
मैं एएसपी.Net AJAX को इस तरह काम करने के तरीके के बारे में किसी भी अंतर्दृष्टि की सराहना करता हूं कि जब मैं उपयोगकर्ता को डिफ़ॉल्ट या गैर-डिफ़ॉल्ट सूची इटम्स को रेडियोबटन सूची में चुनता हूं तो मैं चयनित इंडेक्स चेंज ईवेंट को आग लग सकता हूं। रिकॉर्ड के लिए, मैंने पेज_लोड ईवेंट में रेडियोबटन सूची डिफ़ॉल्ट चयन को सेट करने का प्रयास किया, लेकिन इससे मदद नहीं मिली।
किसी भी और सभी मदद के लिए अग्रिम धन्यवाद!
ध्यान दें कि मैंने एएसपीएक्स पेज पर परिभाषित ट्रिगर्स को हटाने का भी प्रयास किया है और इसके बजाय, पेज_लोड इवेंट में रेडियोबटन लिस्ट नियंत्रण पंजीकृत किया है: "scriptmanager1.RegisterPostBackControl (rblHighestDegree);" दुर्भाग्यवश, इस दृष्टिकोण के परिणामस्वरूप मैंने वही व्यवहार किया जिसकी मैंने उपरोक्त शिकायत की थी। – cjo30080
यदि आप जेनरेट किए गए HTML को देखते हैं, तो आप देखेंगे कि डिफ़ॉल्ट चयनित रेडियो में __doPostBack को कॉल करने के लिए ऑनक्लिक सेट नहीं है। –