रद्द करने पर jquery मान्य कैसे दबाने के लिए? - jquery, jquery-validate

मैं फॉर्म के लिए jquery मान्य प्लगइन का उपयोग कर रहा हूँमान्यता। मैं रद्द कार्यक्षमता के साथ कुछ अजीब देख रहा हूं। मेरे पास एक ईमेल फ़ील्ड, एक सबमिट बटन और एक रद्द बटन वाला एक फॉर्म है। जब मैं ईमेल फ़ील्ड में अपूर्ण पता टाइप करता हूं, और फिर पृष्ठ पर कहीं और क्लिक किए बिना , रद्द करें पर क्लिक करें, वैधकर्ता ईमेल फ़ील्ड की जांच करता है, फ़ील्ड के बगल में अमान्य संदेश प्रदर्शित करता है, और रद्द करने की कार्रवाई को मारता है।

मुझे यहां एक संबंधित प्रश्न मिला: jQuery सत्यापन प्लगइन: निर्दिष्ट सबमिट बटन के लिए सत्यापन अक्षम करें। यह बिल्कुल वैसा ही दिखता है जो मुझे चाहिए। हालांकि यह काम नहीं करता है! मैंने अपने रद्द बटन पर "रद्द करें" सीएसएस वर्ग जोड़ा, लेकिन इसका कोई प्रभाव नहीं पड़ा।

यह नमूना कोड उस समस्या को प्रदर्शित करता है जिसे मैं देख रहा हूं। मैं एफएफ और क्रोम दोनों में व्यवहार देख रहा हूं।

इस नमूने में, जब मैं एक अवैध ईमेल टाइप करता हूंटेक्स्ट इनपुट में पता, और फिर किसी और चीज पर क्लिक करने से पहले रद्द करें बटन पर क्लिक करें, सत्यापनकर्ता पाठ इनपुट के बगल में एक संदेश प्रदर्शित करता है और रद्द करने की क्रिया कभी नहीं होती है। यदि मैं फिर से रद्द करें क्लिक करता हूं, तो पेज अपेक्षित के रूप में पुनः लोड हो जाता है। इसका अर्थ यह है कि पृष्ठ को रद्द करने के लिए, मुझे प्रभावी रूप से दो बार रद्द करना होगा।

<script type="text/javascript">
$(document).ready(function () {
$("#myForm").validate()

$(".cancel").click(function () {
location.reload(true)
})

})
</script>

<div>
<form name="myForm" id="myForm" action="index.html">
<input type="text" class="required email" id="myField" name="myField"/>
<input type="submit" value="Submit"/>
<input type="submit" value="Cancel" class="cancel"/>
</form>
</div>

यह भी दिलचस्प: मैंने jquery मान्य दस्तावेज में पाए गए डेमो को चलाने का प्रयास किया (http://docs.jquery.com/Plugins/Validation/Reference#Skipping_validation_on_submit)।जब मैं डेमो चलाता हूं, तो मैं यह नहीं बता सकता कि सत्यापन कार्य कर रहा है या नहीं - ईमेल फ़ील्ड को कभी भी अमान्य चिह्नित नहीं किया जाता है, भले ही मैं gobbledygook दर्ज करता हूं और सबमिट बटन पर क्लिक करता हूं। मुझे कभी भी एक साधारण चेतावनी मिलती है जिसे " फॉर्म "s submitHandler। और रद्द करें बटन वैसे ही व्यवहार करता है, इसलिए मैं यह नहीं कह सकता कि रद्द वर्ग कार्य को बिल्कुल जोड़ना है या नहीं।

मैं इसे एफएफ और क्रोम दोनों के साथ चला रहा हूं। मैं jquery 1.9.1 और jquery-validate 1.11.4 का उपयोग कर रहा हूं।

उत्तर:

उत्तर № 1 के लिए 7

आपके द्वारा संदर्भित प्रश्न पर स्वीकृत उत्तर के अनुसार, एक जोड़ना cancel कक्षा केवल सत्यापन को "दबाने" देती है। जैसा कि आप इस डेमो में देख सकते हैं, रद्द बटन बिल्कुल एक और सबमिट बटन की तरह व्यवहार करता है, सिवाय इसके कि सत्यापन को छोड़ दिया गया है। जब रद्द करें बटन क्लिक किया जाता है तो कृपया वर्णन करें कि आप क्या देखना चाहते हैं।

अन्यथा, शायद यह वही है जो आप चाहते हैं: http://jsfiddle.net/25XBT/

jQuery:

$(document).ready(function () {

var validate = $("#myform").validate({
// your rules & options
});

$("#cancel").on("click", function (e) {
e.preventDefault();
validate.resetForm();
$("form").get(0).reset();
});

});

एचटीएमएल:

<form id="myform">
<input type="text" name="myfield" />
<input type="submit" />
<input type="submit" id="cancel" class="cancel" value="cancel" />
</form>

देख: http://docs.jquery.com/Plugins/Validation/Validator/resetForm

संपादित करें: class="cancel" तब से इसके पक्ष में बहिष्कृत किया गया है formnovalidate विशेषता।

<input type="submit" id="cancel" formnovalidate="formnovalidate" value="cancel" />

संबंधित सवाल
सबसे लोकप्रिय