ฉันยังแสดงความคิดเห็นไม่ได้ฉันจึงโพสต์ข้อความนี้เพื่อเป็นคำตอบ วิธีที่ดีที่สุดในการหลีกเลี่ยงการโหลดซ้ำคือวิธีที่ @ user2868288 กล่าวว่า: โดยใช้onsubmit
ไฟล์form
แท็ก
จากความเป็นไปได้อื่น ๆ ทั้งหมดที่กล่าวถึงที่นี่เป็นวิธีเดียวที่อนุญาตให้เรียกใช้การตรวจสอบข้อมูลอินพุตของเบราว์เซอร์ HTML5 ใหม่ ( <button>
จะไม่ทำหรือตัวจัดการ jQuery / JS) และอนุญาตให้เพิ่มข้อมูลไดนามิก jQuery / AJAX ของคุณใน หน้า. ตัวอย่างเช่น:
<form id="frmData" onsubmit="return false">
<input type="email" id="txtEmail" name="input_email" required="" placeholder="Enter a valid e-mail" spellcheck="false"/>
<input type="tel" id="txtTel" name="input_tel" required="" placeholder="Enter your telephone number" spellcheck="false"/>
<input type="submit" id="btnSubmit" value="Send Info"/>
</form>
<script type="text/javascript">
$(document).ready(function(){
$('#btnSubmit').click(function() {
var tel = $("#txtTel").val();
var email = $("#txtEmail").val();
$.post("scripts/contact.php", {
tel1: tel,
email1: email
})
.done(function(data) {
$('#lblEstatus').append(data); // Appends status
if (data == "Received") {
$("#btnSubmit").attr('disabled', 'disabled'); // Disable doubleclickers.
}
})
.fail(function(xhr, textStatus, errorThrown) {
$('#lblEstatus').append("Error. Try later.");
});
});
});
</script>
<input type='button' />
มันเป็นทางเลือกที่ดี