我有以下HTML表单:
<form class="page-footer_enquiry-form" id="page-footer_enquiry-form" method="post" autocomplete="on" action="../php/enquiry.php">
<h2 class="page-footer_enquiry-form-title">Enquiry</h2>
<!-- Name -->
<div class="page-footer_enquiry-form-name">
<label for="footer-enquiry-name">
<span class="page-footer_enquiry-form-label">Full Name</span>
<input type="text" id="footer-enquiry-name" name="fullname">
</label>
</div>
<!-- Email -->
<div class="page-footer_enquiry-form-email">
<label for="footer-enquiry-email">
<span class="page-footer_enquiry-form-label">Email Address</span>
<input type="email" id="footer-enquiry-email" name="email">
</label>
</div>
<!-- Message -->
<div class="page-footer_enquiry-form-message">
<label for="footer-enquiry-message">
<span class="page-footer_enquiry-form-label">Message</span>
<textarea name="message" id="footer-enquiry-message" rows="10" cols="50"></textarea>
</label>
</div>
<input name="submit" type="submit" value="Send Message" class="button-dark">
<p class="page-footer_enquiry-form-dialog"></p>
</form>
以下PHP“处理”:
if( isset( $_POST['submit'] ) ){
echo 'first';
} else {
echo 'second';
};
每当我按下提交按钮时,我都会'秒'(通过js登录到控制台)。
编辑 - jQuery:
handler : function(){
var jqxhr = $.ajax({
type: 'POST',
url: '../php/enquiry.php',
data: $('#page-footer_enquiry-form').serialize() + "&js=true",
success : function(res) {
console.log(res);
}
});
},
我担心这对其他人来说是显而易见的,但我无法确定问题。求助。
答案 0 :(得分:5)
如果你看一下serialize()https://api.jquery.com/serialize/的文档,你会发现以下内容:
没有提交按钮值被序列化,因为表单未使用按钮提交。
我认为这会导致你的问题。