我是一个JQuery/JS newb,并且遇到了简单的.blur()事件调用问题。HTML表单模糊JQuery函数调用PHP
基本上我有一个html表单,输入有“id ='validate'”,应该调用一个php脚本来验证在数据库表单的输入元素中输入的内容是否存在。
任何帮助将不胜感激!
此刻我收到错误:“SyntaxError:missing:after property id @ line 6”[at'alert(“Called !!”),'],但是如果我注释掉它,所有。
HTML:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src='../js/validate.js'></script>
<!DOCTYPE html>
<html>
...
<body>
...
<form method="POST" action="upload.php?t=0" class="formbox" style="float:left;" name='aform'>
<label>Category: </label><input type="text" id='validate' maxlength="30" name="category"/><br />
<input style="margin-left:35%;width:130px;" type="submit" value="Submit Article" />
</form>
...
</body>
</html>
validate.js:
$(document).ready(function(){
$('#validate').blur(function(){
$.ajax({
type: "POST",
url: "../php/validate.php",
data: aform.elements["category"].value,
success: function(msg){
alert("Category exists!");
},
error: function(){
alert("Error!");
}
});
});
});
validate.php:
<?php
include '../php/db.php';
echo "Called!";
$cat = mysqli_real_escape_string($con, $_POST['category']);
$query = mysqli_query($con, "SELECT DISTINCT * FROM Category WHERE Name='".$cat."';");
if(mysqli_num_rows($query) == 1){
echo "Category Exists!";
}else if(mysqli_num_rows($query) == 0){
echo "No Category with that name found!";
}else{
echo "Too many Categories found!";
}
?>
提前感谢!
编辑:为了将来的参考,我在引用POST数据时遇到了问题,最后我改变了“data:aform.elements [”category“] .value,”to'data:“cat =”+ document.querySelector ( '[NAME = “类别”]')。“在js文件,并引用 “$ _ POST值,[ '猫']” 中的PHP文件
现在的代码删除警报后的作品!我之前正在测试它,并没有外部的$(document).ready函数,直到我有了警报之后,谢谢你们! – bnunamak