Ajax表单提交无效

时间:2013-11-22 10:36:22

标签: javascript jquery ajax forms form-submit

我有一个简单的反馈表,如下所示,它使用图像作为提交按钮而不是标准的HTML提交按钮。表单似乎提交但“data:”值始终为NULL。我究竟做错了什么?代码如下。

表格:

<div id="theResponse" class="ContactForm"></div>
    <label><span class="footer_text_2"> Email</span> </label>
    <br />
    <form name="contact" method="post" action="">
      <input name="txtEmail" type="text" class="contact" id="txtEmail" value="" />
      <span class="footer_text_2"> Message</span>
      <textarea name="txtComment" cols="18" rows="3" class="contact" id="txtComment"></textarea>
      <input name="Id" type="hidden" id="Id"  value="1"/>
      <input name="input" type="image"  id="ContactSubmit" src="images/btn_send.png" width="60" height="22"/>
    </form>

JQUERY CODE:

$(document).ready(function(){
  //Bind the click event for the login button
$("#ContactSubmit").bind("click", function(){ });
// The click event for button click
$('#ContactSubmit').click(function() {
       $.ajax({
            type: "POST",
            url: "MyAccount/ProcessContactForm.asp",
            data:  $("#contact").serialize(),
            cache: false,
            dataType: "html",
            success: function(responseText){
                $("#theResponse").html(responseText);
            },
        });
    return false;
});
 });
</script>

3 个答案:

答案 0 :(得分:2)

尝试

id="contact"

中缺少form
<form name="contact" method="post" id="contact" action="">

<小时/> 或者将其与您当前的form html

一起使用
data:  $('form[name="contact"]').serialize(),

答案 1 :(得分:0)

在这一行:

data:  $("#contact").serialize(),

您正在选择ID。

您应该更改此行:

<form name="contact" method="post" action="">

<form id="contact" method="post" action="">

答案 2 :(得分:0)

$("#contact").serialize()

如果您没有为表单元素设置“id”属性,则无效。

其余的都没问题,应该正常工作:)

相关问题