请注意我尝试使用ajax和mysql从index.php / html跳转到test.php页面,如果在表中找不到文本输入那么简单所以它应该转到test.php其他保留在index.php / html带有ajax警报的页面,但每次收到NOT AVAILABLE并且有时提交按钮不起作用时,从索引页面开始,代码FYR ...
//index.php $(document).ready(function() {
//default form not submitted
$("#submit").data("submitted",false);
//preventing enter key in input field from submitting form
$("#welcome").on("submit", function(e){
if($('#submit').data("submitted")===false) {
e.preventDefault();
}
});
//trigger form submission
$("#submit").on("click",function(){
validate();
});});
//default form not submitted
//$("#submit
function validate() {
var num = $('#invst_num').val();
$.ajax({
type: 'POST',
url: 'check_test.php',
data: num,
cache: false,
dataType: "json",
success: function(data) {
if(data){
alert("NOT AVAILABLE");
} else {
$("#submit").data("submitted", true);
$("#welcome").submit();
}
}}</script> <form action="check_test.php" method="post" name="welcome" id="welcome" /> <table width="550" border='0' align='center' cellpadding='0' cellspacing='0'> <tr>
<td align="center"><label>
Enter Inv. # *:
<input name="invst_num" type="text" id="invst_num" size="40" />
<input name="submit" type='submit' id='submit' /> </label></td> </tr></table> </form>
//check_test.php <?php
include ("config/config.php");
//get the username
if (isset($_POST['submit'])) {
$invst_num = $_POST['invst_num'];
//mysql query to select field username if it's equal to the username that we check '
$sql = mysql_query("select invst_num_ar from shareholders_ar where invst_num_ar = '$invst_num' ");
if ($result = mysql_num_rows($sql)>0) {
echo ($result);
}
}
?>
// if not found...test.php should load
<html>
<form
...
Register Data
/form>
</html>
答案 0 :(得分:0)
您的条件是向后的
if(data){
应该是
if(!data){
或者应该通过监听器添加逻辑来翻转警报。
答案 1 :(得分:0)
var num = $('#invst_num').val();
$.ajax({
type: 'POST',
url: 'check_test.php',
data: num,
ajax调用正在发送值data
键,因此您只发送文本字段内容。
你可能应该这样发送:
$.ajax({
type: 'POST',
url: 'check_test.php',
data: { 'invst_num': num },
...
在浏览器中打开开发工具,检查在ajax调用期间发送的内容。