2009-03-09 17 views
8

मेरे पास एक इनपुट चेकबॉक्स है जो कुछ जेएस पृष्ठ लोड पर चलता है जब चेक और अक्षम होता है।अक्षम चेक किए गए चेकबॉक्स को अनचेक के रूप में दिखाया गया है - एएसपी.नेट

<input name="selectUnionDues" id="selectUnionDues" type="checkbox" checked="checked" runat="server" /> 

जब मैं

this.selectUnionDues.checked //returns false 

(सर्वर साइड पर) का उपयोग करके चेकबॉक्स का मूल्य प्राप्त मैं हमेशा एक झूठी

संपादित मिल: मैं भारी एएसपी का उपयोग कर के बारे में चिंतित हूँ। इस एप्लिकेशन में पेज आकार के बाद से शुद्ध नियंत्रण कम होना चाहिए। क्या एचटीएमएल नियंत्रणों का उपयोग करने का कोई तरीका है?

उत्तर

0

मुझे अंतर्ज्ञानी व्यवहार से भी कम मिलता है। यदि मैं पेज_इनिट में मान का परीक्षण करता हूं, तो यह हमेशा सत्य देता है। पेज_लोड में इसका परीक्षण चयनित मूल्य देता है।

रनैट = सर्वर के साथ एक HTML नियंत्रण के बजाय सर्वर साइड कंट्रोल का उपयोग करने का प्रयास करें।

<asp:CheckBox ID="selectUnionDues" runat="server" Checked="true" /> 

इसके अलावा, आप "अक्षम" नियंत्रण देते हैं लेकिन मुझे आपके मार्कअप में अक्षम कुछ भी दिखाई नहीं देता है। किसी भी तरह से, एक सर्वर WebControl का उपयोग करने के लिए बेहतर है।

+0

: LoadViewState और LoadPostData। ये दोनों नियंत्रण में मूल्यों को बदल सकते हैं। –

0

आप जे एस पर निर्भर कोई आपत्ति नहीं है, तो आप एक छिपा इनपुट जो मूल्य परिवर्तन है जब चेकबॉक्स चेक गुण परिवर्तन और फिर उस मूल्य सर्वर साइड का उपयोग हो सकता था।

+0

बीटीडब्ल्यू, मुझे लगता है कि यह जेएस पर भरोसा करने में कोई समस्या नहीं होगी क्योंकि जेएस क्या है जो चेकबॉक्स को अक्षम कर रहा है। – Charlino

3

जांच यह पता http://www.4guysfromrolla.com/articles/012506-1.aspx

संक्षेप में, (1) वहाँ "फार्म" या (2) tweak जावास्क्रिप्ट लेखक

+0

यह हमेशा काम नहीं करता है; मैं अक्षम करने गया था टेबल-पूर्ण नियंत्रण की विधि द्वारा सुझाव दिया [यहां] (http://forums.asp.net/p/1121242/3109517.aspx) और यह ठीक से काम से 'SubmitDisabledControls' रोका। मुझे व्यवहार करने के लिए अलग-अलग तालिका में सभी नियंत्रणों को अक्षम करना पड़ा। लेकिन टिप के लिए धन्यवाद। –

1

बशर्ते आप अक्षम करते हैं की एक "SubmitDisabledControls" संपत्ति है चेकबॉक्स, यह हमेशा झूठी वापसी करता है। सबसे अच्छा विचार है कि चेकबॉक्स को केवल पढ़ने के लिए, ताकि वह मान को वापस कर दे। readonly="readonly" बनाएं।

0

हालांकि मूल प्रश्न HtmlInputCheckBox नियंत्रण के बारे में था, मुझे लगता है कि यह उल्लेख करना उपयोगी होगा कि चेकबॉक्स नियंत्रण के लिए भी इसी तरह की समस्या मौजूद है, जिसके लिए चित्र अधिक जटिल है, क्योंकि सक्षम = "गलत" के बीच कोई अंतर है और विकलांग = "अक्षम"। मैं यहां जांच के परिणाम पोस्ट करता हूं: ASP.Net Checkbox.Checked is set to default when use disabled attribute or difference between Enabled property and disabled attribute। विशेष रूप से यह बताता है कि अक्षम विशेषता का उपयोग कब किया जाता है जब अक्षम संपत्ति का उपयोग किया जाता है, और सक्षम सर्वर प्रॉपर्टी का उपयोग होने पर इसे रीसेट क्यों नहीं किया जाता है।

Page_Init और Page_Load वहाँ अधिक पेज जीवन चक्र के तरीकों (जो आप ओवरराइड कर सकते हैं यदि आप चाहते हैं) कर रहे हैं के बीच
संबंधित मुद्दे