我有一个简单的反馈表,如下所示,它使用图像作为提交按钮而不是标准的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>
答案 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”属性,则无效。
其余的都没问题,应该正常工作:)