2010-07-25 5 views
14

मैं एक रूप जहाँ उपयोगकर्ता एक लिंक पर क्लिक करने के लिए, एक पॉपअप विंडो जो तब एक आईडी और उपयोगकर्ता नाम के साथ एक प्रदर्शन क्षेत्र के साथ एक छिपी हुई फ़ील्ड भरता है के माध्यम से एक उपयोगकर्ता का चयन की जरूरत मिल गया है।jQuery - क्या मैं एक अक्षम फ़ील्ड को सत्यापित कर सकता हूं?

प्रदर्शन क्षेत्र पॉपअप उपयोग करने के लिए और क्षेत्र में एक मान टाइप नहीं उपयोगकर्ता के लिए मजबूर करने विकलांग = "अक्षम" पर सेट है।

मैं सुनिश्चित करने के लिए उपयोगकर्ता एक नाम का चयन करता है की जरूरत है। मैं jQuery और जोर्न की सत्यापन प्लगइन का उपयोग कर रहा हूं।

कर एक आवश्यक: विकलांग मैदान पर सही बंद आग यदि मान रिक्त है प्रतीत नहीं होता।

कोई भी विचार है कि यह कैसे हल करने के लिए?

+0

यदि फ़ील्ड I सिर्फ प्रदर्शन के लिए क्या आप छिपे हुए आईडी को बंद नहीं कर सकते हैं? केवल एक फ़ील्ड के लिए टेक्स्ट बॉक्स का उपयोग क्यों करें। एक अवधि या div को लिखने के लिए बस jQuery का उपयोग करें। उपयोगकर्ता को नहीं लगता कि वे टेक्स्ट संपादित कर सकते हैं और आप किसी चीज़ को मान्य करने की कोशिश नहीं कर रहे हैं जो इससे कोई फर्क नहीं पड़ता। – ahsteele

+0

छिपे हुए फ़ील्ड को सत्यापित करने के लिए क्यों सत्यापित करें कि इसमें कोई आईडी है? – Matt

उत्तर

27
इसके बजाय यह विकलांग बनाने का

, तो आप इसे केवल पढ़ने के लिए बनाने की कोशिश की?

<input type="text" readonly="readonly" /> 

मैं वर्षों से पहले याद है कि विकलांग क्षेत्रों रूपों द्वारा प्रस्तुत नहीं कर रहे हैं, और इसलिए शायद

पुष्टि नहीं कर रहे हैं यहाँ विषय पर W3C HTML4 Spec है।

+0

उत्कृष्ट !! मुझे केवल पढ़ने के बारे में भी पता नहीं था .. क्या यह सभी ब्राउज़रों के साथ संगत है? – Falantar014

1

कारण है कि यह सक्षम करने के लिए और फिर .attr('disabled','disabled') इसे फिर से अक्षम करने के लिए यह बहुत जल्दी आप अभ्यस्त भी यह नोटिस नहीं होगा .attr('disabled','') का उपयोग कर बस सत्यापन befor यह सक्षम नहीं है और फिर इसे फिर से अक्षम करें ... ।

2

पिछले सुझाव के अनुसार संभव समाधान हो सकता है:

var _valid = $.fn.valid; 
$.fn.valid = function (alsoDisabled) { 
    var alsoDisabled = alsoDisabled || false; 
    if (alsoDisabled) { 
     this.find('[disabled]').prop('disabled', false); 
    } 
    var retVal = _valid.apply(this); 
    if (alsoDisabled) { 
     this.find('[disabled]').prop('disabled', true); 
    } 
    return retVal; 
}; 


और इसलिए आप वैकल्पिक तर्क के साथ मान्य विधि कह सकते हैं: $('#form').valid(true) भी जांच करने के लिए विकलांग क्षेत्र या सामान्य के लिए $('#form').valid() व्यवहार

सबसे अच्छा गेटानो

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

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