2010-12-13 51 views
2

Comment utiliser addmethod dans jquery.validate. Exempleaddmethod dans jquery.validate

$("#formname").validate({ 
    rules: { 
     textbox: { 
      required: true, 
      regexp: /['"]/ 
     }, 
     methods: { 
      required: "Should not be blank", 
      regexp: "Single quotes and double quotes not allowed" 
     } 
    } 
}); 

Je dois vérifier cite en zone de texte avec addmethod. Comment puis-je faire ceci. Expliquez-moi en implémentant votre réponse avec mon exemple de code.

Répondre

2

Nous avons d'abord besoin de quelques corrections, la mise en page pour messages est comme ça (vous ne pouvez pas le faire avec vos options originales ... le plugin ne fonctionne tout simplement pas l'air de cette structure):

$("#formname").validate({ 
    rules: { 
     textbox: { 
      required: true, 
      regexp: /['"]/ 
     } 
    }, 
    messages: { 
     textbox: { 
      required: "Should not be blank", 
      regexp: "Single quotes and double quotes not allowed" 
     } 
    } 
}); 

Ensuite, votre méthode ressemblerait à ceci:

$.validator.addMethod("regexp", function(value, element, param) { 
    return this.optional(element) || !param.test(value); 
}); 

You can test it out here .... mais vous remarquez que votre regex est en arrière, de sorte que la dénomination n'est pas tout à fait raison ... Je renomme regexp-nomatch ... ou quelque chose plus indicatif du comportement que vous êtes lo en train de

0
$("#formname").validate({ 
    rules: { 
    textbox: { 
     required: true, 
     regexp: true 
    } 
    }, 
    messages: { 
    textbox: { 
     required: "Should not be blank", 
     regexp: "Single quotes and double quotes not allowed" 
    } 
    } 
}); 



// Regexp validation 
$.validator.addMethod("regexp", function(value, element, arg){ 
var reg_val=$('#textbox').val(); 
var regExp=/^['"]+$/; 

if($('#textbox').val().match(reg_val)){ 
    return true; 
}else{ 
    return false; 
} 
}, "");