javascript - डोजो में पासवर्ड की जांच




2 Answers

इससे आपको बहुत करीब आ जाएगा

  • मध्यवर्ती सेटिंग परिवर्तन = झूठे हर किस्ट्रोक पर चलने वाले मान्यकर्ता को रखता है।
  • सत्यापन डीआईजीट की बाध्यता वस्तु उसके सत्यापनकर्ता को पास कर दी गई है। अन्य पासवर्ड प्रविष्टि में पास करने के लिए इसका उपयोग करें
  • dijit.form.Form स्वचालित रूप से अपने सभी बच्चे dijits पर validates है जब यह जमा है, और जमा रद्द अगर वे सभी मान्य नहीं है हालांकि, अमान्य लोगों को उनकी त्रुटि संदेश मिलेगा, लेकिन वे ऐसा नहीं करते। यह पाठक के लिए एक अभ्यास के रूप में छोड़ दिया है ;-)

सत्यापन कार्य:


function confirmPassword(value, constraints)
{
    var isValid = false;
    if(constraints && constraints.other)  {
        var otherInput =  dijit.byId(constraints.other);
        if(otherInput) {
            var otherValue = otherInput.value;
            console.log("%s == %s ?", value, otherValue);
            isValid = (value == otherValue);
        }
    }
    return isValid;
}
function onsubmit()
{
    var p1 = dijit.byId('password1').value;
    var p2 = dijit.byId('password2').value;
    return p1 == p2;
}

और इनपुट ऑब्जेक्ट्स:


<p>Password: <input type="password"
    name="password1"
    id="password1"
    dojoType="dijit.form.ValidationTextBox"
    required="true"
    intermediateChanges=false
    invalidMessage="Please type a password" /></p>

<p>Confirm: <input type="password"
    name="password2"
    id="password2"
    dojoType="dijit.form.ValidationTextBox"
    required="true"
    constraints="{'other': 'password1'}"
    validator=confirmPassword
    intermediateChanges=false
    invalidMessage="This password doesn't match your first password" /></p>

मैं यह देखना चाहता हूं कि दो पासवर्ड डोजो का उपयोग करते हुए समान हैं

मेरे पास एचटीएमएल है:

<form id="form" action="." dojoType="dijit.form.Form" / <form id="form" action="." dojoType="dijit.form.Form" / >

<p > पासवर्ड: <input type="password"
name="password1"
id="password1"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="Please type a password" /
<input type="password"
name="password1"
id="password1"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="Please type a password" /
<input type="password"
name="password1"
id="password1"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="Please type a password" /
> </p >

<p > पुष्टि करें: <input type="password"
name="password2"
id="password2"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="This password doesn't match your first password" /
<input type="password"
name="password2"
id="password2"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="This password doesn't match your first password" /
<input type="password"
name="password2"
id="password2"
dojoType="dijit.form.ValidationTextBox"
required="true"
invalidMessage="This password doesn't match your first password" /
> </p >

<div dojoType="dijit.form.Button" onClick="onSave" > सहेजें </div >

</form >

यहां तक ​​कि मेरे पास जावास्क्रिप्ट है I

var onSave = function() {
if(dijit.byId('form').validate()) { alert('Good form'); }
else { alert('Bad form'); }
}

आपकी सहायता के लिए धन्यवाद. मैं यह शुद्ध जावास्क्रिप्ट में कर सकता था, लेकिन मैं Dojo इसे करने का रास्ता खोजने की कोशिश कर रहा हूँ।




मैंने इसे हल किया है!

Dojo फोरम पर यह पृष्ठ उपयोगी था।

मैंने पुष्टि पासवर्ड के लिए HTML को बदल दिया है:

<p >Confirm: <input type="password"
name="password2"
id="password2"
dojoType="dijit.form.ValidationTextBox"
required="true"
validator="return theSame(this, dijit.byId('password1'));"
invalidMessage="This password doesn't match your first password" /
> </p >

एकमात्र अंतर जोड़ा वैधीकरण पैरामीटर है

और मैंने निम्न जावास्क्रिप्ट फ़ंक्शन बनाया:

function(dojoTxt1, dojoTxt2) {
return dojoTxt1.getValue() == dojoTxt2.getValue();
}

मुझे लगता है कि आप परीक्षण करने के लिए नियमित अभिव्यक्ति बनाने के लिए मान्यकर्ता पैरामीटर का भी उपयोग कर सकते हैं, लेकिन दस्तावेज़ बहुत स्पष्ट नहीं हैं।




Related