[英]Date picker javascript and email check ajax java script error
我有一個表單html,其中包含出生日期和電子郵件字段。 我正在使用日期選擇器為出生地的bate工作正常。對於電子郵件領域。我使用ajax驗證email.email驗證不起作用。 我使用以下代碼,
HTML
<?php
session_start();
ob_start();
?>
<!DOCTYPE html>
<html>
<head><title>TIME MANAGEMENT</title>
<style>
body { margin: 0; padding: 0; font-family:Verdana; font-size:20px }
td { padding: 2px; font-family:Verdana; font-size:10px }
.input_s1_normal { width: 150; height: 15; font-family: Verdana; font-size: 10px; border: 1px solid black; }
.input_s1_focus { background: #efefef; }
.button_s1 { font-family: Verdana; font-size: 10px; font-weight: bold; border: 1px solid black; }
</style>
<link rel="stylesheet" href="css/jquery-ui.css">
<link rel="stylesheet" href="css/registration.css">
<script src="js/jquery-1.2.6.min.js" type="text/javascript"></script>
<script src="js/jquery-1.10.2.js"></script>
<script src="js/jquery-ui.js"></script>
<script>
$(function() {
$( "#datepicker" ).datepicker({ dateFormat: "yy-mm-dd" }).val()
});
</script>
<script src="js/check.js" type="text/javascript"></script>
</head>
<body>
<form name="chkForm" id="chkForm" method="POST" action="condition.php">
Name<input type="text" name="empname" value=""/><br/>
<p>
DOB <input type="text" id="datepicker" name="empdob" value="" /><br/><!--d-m-y-->
</p>
<?php
$link = mysql_connect("localhost", "root", "");
mysql_select_db("harisan", $link);
$result = mysql_query("SELECT * FROM designation", $link);
$num_rows = mysql_num_rows($result);
if($num_rows>0)
{
echo "Designation <select name='position'><br/>";
while($result1= mysql_fetch_array($result))
{
echo "<option value='".$result1['design_name']."'>".$result1['design_name']."
</option>";
}
echo "</select>";
}
?>
<br/>
Email<input id="email" type="text" name="email" /><br/>
<div id="emailInfo" align="left"></div>
<input type="submit" name="signup" value="submit"></input>
<a href="view_list.php" value="">view</a>
</form>
</body>
</html>
JavaScript的
$(document).ready(function(){
$('#B1').attr('disabled','');
var emailok = false;
var boxes = $(".input_s1_normal");
var myForm = $("#chkForm"), email = $("#email"), emailInfo = $("#emailInfo");
//give some effect on focus
boxes.focus(function(){
$(this).addClass("input_s1_focus");
});
//reset on blur
boxes.blur(function(){
$(this).removeClass("input_s1_focus");
});
//Form Validation
myForm.submit(function(){
if(email.attr("value") == "")
{
alert("Enter Email");
email.focus();
return false;
}
if(!emailok)
{
alert("Check Email");
email.attr("value","");
email.focus();
return false;
}
});
//send ajax request to check email
email.blur(function(){
$.ajax({
type: "POST",
data: "email="+$(this).attr("value"),
url: "check.php",
beforeSend: function(){
emailInfo.html("<font color='blue'>Checking Email...</font>");
},
success: function(data){
if(data == "invalid")
{
emailok = false;
emailInfo.html("<font color='red'>Invalid Email</font>");
}
else if(data != "0")
{
emailok = false;
emailInfo.html("<font color='red'>Email Already Exist</font>");
}
else
{
emailok = true;
emailInfo.html("<font color='green'>Email OK</font>");
}
}
});
});
});
我不知道是什么問題。請幫助我是javascript的新手。 電子郵件驗證無法正常工作。它總是在重新顯示無效的電子郵件 。 我使用了以下網址: https : //beski.wordpress.com/2009/05/16/check-email-already-exist-ajax-jquery/
聽起來你的問題在你的check.php里面(你沒有包括)。 如果你在check.php中使用正則表達式來驗證你的電子郵件我試着用這個代碼替換它,看它是否有效:
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
//Valid email!
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.