Jquery表单不发送?

时间:2013-02-10 20:03:07

标签: jquery html

我的代码的简化版本:

JS:

$(function() {
    $("submit").click(function() {
        var msg_to = $("#msg_to").val();

        var dataString = 'msg_to=' + msg_to;

        $.ajax({
            type: "POST",
            url: "sendmessage.php",
            data: dataString,
            success: function(){
                $('.success').fadeIn(200).show();
                $('.error').fadeOut(200).hide();
            }
        });

        return false;
    });
});

HTML

<form method="post" name="form">
            <label class="label-left" for="msg_to">Message to</label>
            <input name="msg_to" id="msg_to" type="text">
 <input type="submit" value="" class="submit" />

php文件将表单邮寄到我的电子邮件中,当我将表单发布到PHP文件时,这确实有效。通过jquery,它将无法正常工作。任何人都可以在我的代码中找到错误吗?

3 个答案:

答案 0 :(得分:4)

$("submit")

应该是:

$(".submit")

第一个查找<submit>标记。

答案 1 :(得分:3)

试试这个:

$(document).ready(function() { // use document query selector then test for ready state
    $(".submit").click(function() { // submit query selector should have class "."
        var msg_to = $("#msg_to").val();
        var dataString = "msg_to=" + msg_to;

        $.ajax({
            type: "POST",
            url: "sendmessage.php",
            data: dataString,
            success: function() {
                $(".success").fadeIn(200); // no need for show()
                $(".error").fadeOut(200); // no need for hide()
            }
        });

        return false;

    });
});

答案 2 :(得分:0)

有效!这是@Vulcan的解决方案和@Jacedc的组合,我错误地在上面的脚本之后导入了jquery ..