我在检查密码是否与密码确认相同时遇到问题。逻辑很好我不认为我的代码中有错误。
$("#pass2").keyup(function(){
check_password();
});
function check_password(){
$.ajax({
type: "post",
url: "register.php",
data: {
'pass1_check': $("#pass1").val(),
'pass2_check': $("#pass2").val()
},
success : function(data){
if(data == 'success'){
$("#output_pass2").html('<img src="images/check.png" alt=""/>');
$("#output_pass1").html('<img src="images/check.png" alt=""/>');
}
else{
$("#output_pass2").css("color","red").html(data);
}
}
});
}
我的问题是在这种情况下:if(data =='success') 在我的输出中我没有图像,我输出“成功”而不是检查图像
我的register.php:
<?php
if(!empty($_POST['pass1_check'])&& !empty($_POST['pass2_check']))
{
if(strlen($_POST['pass1_check']) <6 || strlen($_POST['pass2_check']) <6)
{
echo'<br>Very short';
exit();
}else if($_POST['pass1_check'] == $_POST['pass2_check']){
echo'success';
exit();
}else{
echo '<br> the two password are not same';
exit();
}
}
?>
html代码中的两个密码标签:
<div class="form-group">
<label for="pass1" class="col-sm-5 control-label">Password :</label>
<div class="col-sm-5">
<input type="Password" id="pass1" class="form-control" placeholder="Enter Your Password " required>
<small id="output_pass1" ></small>
</div>
</div>
<div class="form-group">
<label for="pass2" class="col-sm-5 control-label">Confirm Your Password :</label>
<div class="col-sm-5">
<input type="Password" class="form-control" id="pass2" placeholder="Confirm Your Password " required>
<small id="output_pass2"></small>
</div>
</div>
我使用bootstrap 3来设计css。
答案 0 :(得分:-1)
看起来您的POST数据部分不正确
由迈克塞缪尔提出的更新以下内容应该有效。
data: {
'pass1_check': $("#pass1").val(),
'pass2_check': $("#pass2").val()
},
如上所述,if(data == 'success')
无效。
可能需要这样做
if(data.trim() == 'success')
确保删除所有空白区域。