เลิกใช้แล้ว - ส่วนนี้ล้าสมัยดังนั้นโปรดอย่าใช้
คุณสามารถลองใช้รหัสนี้ได้เช่นหากคุณเพิ่มฟอร์มแบบไดนามิกในภายหลัง ตัวอย่างเช่นคุณโหลดหน้าต่าง async ด้วย ajax และต้องการส่งแบบฟอร์มนี้
$('#cpa-form').live('submit' ,function(e){
e.preventDefault();
// do something
});
อัพเดท - คุณควรใช้วิธี jQuery on () และลองฟัง DOM เอกสารหากคุณต้องการจัดการเนื้อหาที่เพิ่มเข้ามาแบบไดนามิก
กรณีที่ 1 รุ่นคงที่: หากคุณมีผู้ฟังเพียงไม่กี่คนและรูปแบบการจัดการของคุณคือฮาร์ดโค้ดคุณสามารถฟังได้โดยตรงที่ "ระดับเอกสาร" ฉันจะไม่ใช้ผู้ฟังในระดับเอกสาร แต่ฉันจะพยายามทำให้ลึกลงไปในแผนภูมิการลงโทษเนื่องจากอาจนำไปสู่ปัญหาด้านประสิทธิภาพ (ขึ้นอยู่กับขนาดของเว็บไซต์และเนื้อหาของคุณ)
$('form#formToHandle').on('submit'...
หรือ
$('form#formToHandle').submit(function(e) {
e.preventDefault();
// do something
});
กรณีที่ 2 รุ่นไดนามิก:หากคุณได้ฟังเอกสารในรหัสของคุณแล้ววิธีนี้จะดีสำหรับคุณ สิ่งนี้จะทำงานกับรหัสที่เพิ่มในภายหลังผ่าน DOM หรือไดนามิกด้วย AJAX
$(document).on('submit','form#formToHandle',function(){
// do something like e.preventDefault();
});
หรือ
$(document).ready(function() {
console.log( "Ready, Document loaded!" );
// all your other code listening to the document to load
$("#formToHandle").on("submit", function(){
// do something
})
});
หรือ
$(function() { // <- this is shorthand version
console.log( "Ready, Document loaded!" );
// all your other code listening to the document to load
$("#formToHandle").on("submit", function(){
// do something
})
});
alert()
อยู่ในตัวจัดการการส่งจะถูกเรียก? ถ้าไม่เช่นนั้นอาจเป็นไปได้ว่ามีข้อผิดพลาดในสคริปต์ของคุณที่ป้องกันไม่ให้ตัวจัดการเหตุการณ์เชื่อมต่ออย่างถูกต้อง มีอะไรในคอนโซลข้อผิดพลาดบ้าง