HTML提交表单没有刷新页面和显示警告框

时间:2013-03-19 14:18:09

标签: javascript html forms alertdialog

我想将表单提交给php,然后数据将更新到数据库并显示警告框。 现在,数据已更新数据库,但警报框未显示。 我的代码有什么问题? 感谢。

的test.html

<!DOCTYPE html>
<html>
<head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
        function SubmitForm() {
        var category_id = $("#category_id").val();
        var category_name = $("#category_name").val();
        $.post("test.php", { category_id: category_id, category_name: category_name },
           function(data) {
             alert("Finish!");
           });
        }
    </script>
</head>
<body>

    <form action="test.php" method="post">
        category_id: <input type="text" name="category_id" id="category_id"/>
        category_name: <input type="text" name="category_name" id="category_name"/>
        <input type="button" id="searchForm" onclick="SubmitForm();" value="Send" />
    </form> 
</body>
</html>

test.php的

<?php

$a = $_POST['category_id'];
$b = $_POST['category_name'];


$link = mysql_connect('localhost','root',''); 
mysql_select_db("fyp", $link);
$sql = "INSERT INTO category (CID, Category) VALUES (".
         PrepSQL($a) . ", " .
         PrepSQL($b) . ")";

mysql_query($sql);

function PrepSQL($value)
{
    // Stripslashes
    if(get_magic_quotes_gpc())
    {
        $value = stripslashes($value);
    }

    // Quote
    $value = "'" . mysql_real_escape_string($value) . "'";

    return($value);
}
?>

4 个答案:

答案 0 :(得分:1)

试试这个:

  $.post("test.php", { category_id: category_id, category_name: category_name })
      .done(
           function(data) {
               alert("Finish!");
           }
      );

答案 1 :(得分:1)

你在那里放了三个参数,它应该是两个。你可以试试这个:

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
    function SubmitForm() {
    var category_id = $("#category_id").val();
    var category_name = $("#category_name").val();
    $.post("test.php", { category_id: category_id, category_name: category_name })
    .done(function() {
      alert("Finish!");
    });
    }
</script>
祝你好运!

答案 2 :(得分:0)

试试这个

function SubmitForm() {
    var category_id = $("#category_id").val();
    var category_name = $("#category_name").val();
    $.post("test.php", { category_id: category_id, category_name: category_name })
    .done(function(data) {
           alert("Finish!");
    });
}

文档http://api.jquery.com/jQuery.post/

答案 3 :(得分:0)

尝试此解决方案

    function SubmitForm() {
        var category_id = $("#category_id").val();
        var category_name = $("#category_name").val();
        $.ajax({
               type: "POST",
               url: "test.php", 
               data: { category_id: category_id, category_name: category_name }
        }).done (function() {
             alert("Finish");
        }).fail (function(status) {
            console.log(status);          
        });

现在检查数据以查看出现了什么问题。