2010-04-23 8 views
6

पर मुझे एक ड्रॉप-डाउन मिला है जहां उपयोगकर्ता देश का चयन करता है। यह एक आवश्यक "क्षेत्र" है।क्लाइंट-साइड/कस्टम वैलिडेटर पर आवश्यक वैलिडेटर को सक्षम/अक्षम करें

इसके आगे, राज्य नाम का एक टेक्स्टफील्ड है। यदि उपयोगकर्ता यूएस का चयन करता है, तो फ़ील्ड स्टेट आवश्यक है। यदि उपयोगकर्ता उदा। स्वीडन, राज्य की आवश्यकता नहीं है, क्योंकि स्वीडन के पास कोई राज्य नहीं है।

उदाहरण कोड:

<asp:DropDownList runat="server" ID="Country"></asp:DropDownList> 
<asp:RequiredFieldValidator ControlToValidate="Country" 
       runat="server" Display="Static" ErrorMessage="Required field" /> 

<asp:TextBox runat="server" ID="State"></asp:TextBox> 
<asp:CustomValidator ClientValidationFunction="DoesntGetFiredIfStateIsEmpty" 
       runat="server" Display="Static" ErrorMessage="Required field" /> 

<!-- SO, RATHER THIS TOGETHER WITH CONDITIONAL FIRING --> 
<asp:RequiredFieldValidator ControlToValidate="State" 
       runat="server" Display="Static" ErrorMessage="Required field" /> 

आप मेरे सवाल यह है: मैं इस CustomValidator आग सत्यापन कर सकते हैं कैसे जब यह खाली है?

या सरल रखें: मैं सशर्त वैलिडेटर आग को सशर्त रूप से कैसे बना सकता हूं?

या सबसे सरल: मैं क्लाइंट-साइड पर एक आवश्यक वैलिडेटर को कैसे सक्षम/अक्षम कर सकता हूं?

उत्तर

10

सक्षम और प्रमाणकों

ValidatorEnable(RequiredFieldValidatorId, false); 

बाहर चेक this question that I answered निष्क्रिय करने के लिए जावास्क्रिप्ट के साथ ऐसा करने की कोशिश करो।

+0

आशावादी लग रहा था, लेकिन मुझे एएसपी.नेट जेएस जेनरेटेड में "val.style अपरिभाषित" मिलता है ... – Simeon

+1

मुझे यह काम मिल गया। वैधकर्ता के पास माता-पिता के साथ प्रदर्शन था: कोई नहीं; उस पर सेट, जो ValidatorEnable की कार्यक्षमता तोड़ दिया। – Simeon

+5

पहला पैरामीटर वास्तव में वैधकर्ता होना चाहिए, न कि वैधकर्ता की आईडी। – Itison

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