处理程序不工作(html、javascript) 名字 电子邮件 $(文档).ready(函数(){ 函数isValidEmailAddress(电子邮件地址){ (a-a-z)今年:::\\\\美元,,,\\\\\\\\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(((([a-z][[[a-z]号)表示表示新的regEXEXEXP((((([a-z][除除除除除除除除除除除除除除除除除除除除上述上述上述上述:::::::::::::::::\\\\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \,,,:::::::::::::::::::::::::::::::::::::(\x22)(((\x20|\x09)*(\x0d\x0a))(\x20|\x09)+-([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|࿈目前:4040404040404040404040404040\\\x01-\x01-\x01-\\x01-\x01-\x01-\x000\x000B\x0000000\0000000\000000000000000B\x0c\x0c\x0c\x0c\x0c\x0000C\x0d-\x0d-\X000\\x7f-\x7f-\X7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图|([a-z]|\d |[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d |-\u124; ~[u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\(a-z[a-z[[a-a-z][[[a-z][[a-z][[UUU00000-\UUU0000-\UUU0000-\UUU0000-\UUU0000-\UU00000-\U000000000000-\uFDF0-\UFFEFEF.[[[[[[[[UU00000000000000000-\uFDF0-\uFDF0-\uFDF0-\UFF-\UFF-\UFF-\UFFEFEFEF-\UFFEFEFEFEFEFEFEFEFEFEF基金基金][[[[[[[[[[[[[[[[[[[1-a-a-a-a-a-z][a-a-z][a-a-z][a-a-a-z]]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])\.?$/i); 返回模式.test(emailAddress); }; 功能检查邮件(输入){ 如果(!isValidEmailAddress(输入)){ 警报(“wrff”); $(此).addClass(“正确输入”); } 否则{ 警惕(“正确”); $(this).addClass(“输入错误”); } }; });
这是我的html和java脚本代码。但当我在浏览器中运行此代码时,它不起作用。Firefox给出的错误是没有定义“checkMail”函数。但是,正如人们所看到的,它在那里。我尝试将脚本放在上面,它仍然不起作用。我不知道出了什么问题。您不需要将函数包装在处理程序不工作(html、javascript) 名字 电子邮件 $(文档).ready(函数(){ 函数isValidEmailAddress(电子邮件地址){ (a-a-z)今年:::\\\\美元,,,\\\\\\\\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(((([a-z][[[a-z]号)表示表示新的regEXEXEXP((((([a-z][除除除除除除除除除除除除除除除除除除除除上述上述上述上述:::::::::::::::::\\\\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \,,,:::::::::::::::::::::::::::::::::::::(\x22)(((\x20|\x09)*(\x0d\x0a))(\x20|\x09)+-([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|࿈目前:4040404040404040404040404040\\\x01-\x01-\x01-\\x01-\x01-\x01-\x000\x000B\x0000000\0000000\000000000000000B\x0c\x0c\x0c\x0c\x0c\x0000C\x0d-\x0d-\X000\\x7f-\x7f-\X7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图试图|([a-z]|\d |[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d |-\u124; ~[u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\(a-z[a-z[[a-a-z][[[a-z][[a-z][[UUU00000-\UUU0000-\UUU0000-\UUU0000-\UUU0000-\UU00000-\U000000000000-\uFDF0-\UFFEFEF.[[[[[[[[UU00000000000000000-\uFDF0-\uFDF0-\uFDF0-\UFF-\UFF-\UFF-\UFFEFEFEF-\UFFEFEFEFEFEFEFEFEFEFEF基金基金][[[[[[[[[[[[[[[[[[[1-a-a-a-a-a-z][a-a-z][a-a-z][a-a-a-z]]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])\.?$/i); 返回模式.test(emailAddress); }; 功能检查邮件(输入){ 如果(!isValidEmailAddress(输入)){ 警报(“wrff”); $(此).addClass(“正确输入”); } 否则{ 警惕(“正确”); $(this).addClass(“输入错误”); } }; });,javascript,html,Javascript,Html,这是我的html和java脚本代码。但当我在浏览器中运行此代码时,它不起作用。Firefox给出的错误是没有定义“checkMail”函数。但是,正如人们所看到的,它在那里。我尝试将脚本放在上面,它仍然不起作用。我不知道出了什么问题。您不需要将函数包装在$(document).ready(){…},函数不会被触发onload,因为它们被调用,DOM将已经被加载。而且由于$(this)引用jQuery元素,当您调用它时,没有this可引用。checkMail存在于全局上下文之外。只有此函数中存在的
$(document).ready(){…}
,函数不会被触发onload
,因为它们被调用,DOM将已经被加载。而且由于$(this)
引用jQuery元素,当您调用它时,没有this
可引用。checkMail存在于全局上下文之外。只有此函数中存在的代码
<form method="post" action=".">
<label class="input-label">First Name </label><input field="first_name" class="input-edit" maxlength="30" type="text" value="{{ user.first_name }}" />
<label class="input-label"> Email </label><input field="email" class="input-edit" maxlength="75" type="text" value="{{ user.email }}" onkeyup="checkMail(this)" />
<input type="submit" id="save-changes-settings-submit" class="save-changes-button" uid="{{ user.id }}" value="Save changes" />
</form>
<script>
$(document).ready(function(){
function isValidEmailAddress(emailAddress) {
var pattern = new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i);
return pattern.test(emailAddress);
};
function checkMail(input){
if( !isValidEmailAddress( input ) ){
alert("wrff");
$(this).addClass("correct-input");
}
else{
alert("correct");
$(this).addClass("wrong-input");
}
};
});
</script>
可以访问函数checkMail。最好的方法可能是使用jQuery的keyup()方法注册事件处理程序
function(){
function isValidEmailAddress(emailAddress) {
var pattern = new RegExp(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i);
return pattern.test(emailAddress);
};
function checkMail(input){
if( !isValidEmailAddress( input ) ){
alert("wrff");
$(this).addClass("correct-input");
}
else{
alert("correct");
$(this).addClass("wrong-input");
}
};
}
确保它位于$(document).ready()函数中。将函数放在document.ready之外,并将输入的onkeyup更改为onblur事件,并传递参数this.value
onblur=“checkMail(this.value)”顺便说一句,它的“Javascript”,而不是“Java脚本”。Javascript实际上与Java没有任何关系。我只写Javascript,我知道这一点。但是,它不在字典中。因此,它显示了错误。我很匆忙,所以根据字典更正了它。:p
$("#inputElement").keyup(function(){ // your code here... });