【发布时间】:2014-01-17 14:35:25
【问题描述】:
我有两个用于验证电子邮件地址的 javascript 文件。
验证.js:
function checkEmail(userEmail) {
var email = userEmail
var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (emailFilter.test(email.value)) {
//alert('Please provide a valid email address');
//email.focus;
return true;
}
else{
return false
}
}
navigation.js 编辑:
$(document).ready(function() {
//ADDED IMPORTS
var imported = document.createElement('script');
imported.src = 'lib/validation.js';
document.head.appendChild(imported);
console.log("DOCUMENT IS READY!");
var viewsWrapper = $("#views-wrapper");
var loginButton = $("#login-button");
var registerButton = $("#register-button");
// Login Link
// TODO: Unclear if needed
$("ul li.login").click(function() {
$.get('/login', function(data) {
viewsWrapper.html(data);
});
});
$('#usernamefield').blur(function() {
var sEmail = $('#usernamefield').val();
if ($.trim(sEmail).length == 0) {
alert('Please enter valid email address');
e.preventDefault();
}
if (checkEmail(sEmail)) {
alert('Email is valid');
}
else {
alert('Invalid Email Address');
e.preventDefault();
}
});
...(后面有更多代码但不相关)
我也在用这个玉模板:
login.jade:
form(action="")
key EMAIL
input(type="text", name="username", id="usernamefield")
p hello world
br
key PASSWORD
input(type="text", name="password", id="passwordfield")
p hello world
br
input(type="submit", name="loginButton", id="login-button", value="LOGIN")
我的问题是,当我在电子邮件字段中输入内容时,无论如何我都不会收到警报消息。是否允许我只需要分离 javascript 文件并在 navigation.js 中调用我在 validate.js 中定义的方法?我尝试将 validate.js 代码放在 navigation.js 中,但即便如此它也不起作用。我想将文件分开。我错过了一些明显的东西吗?我想要这样,一旦用户输入电子邮件并离开该字段,如果电子邮件有效与否,应该会出现一条消息警告。
感谢您的帮助。
【问题讨论】:
标签: javascript jquery validation pug