ฉันต้องการส่งแบบฟอร์ม HTML ให้ตัวเอง ฉันจะใช้action
แอตทริบิวต์ได้อย่างไร
<form action="">
<form action="#">
<form action="some/address">
<form>
แบบไหนดีกว่ากัน?
ฉันต้องการส่งแบบฟอร์ม HTML ให้ตัวเอง ฉันจะใช้action
แอตทริบิวต์ได้อย่างไร
<form action="">
<form action="#">
<form action="some/address">
<form>
แบบไหนดีกว่ากัน?
คำตอบ:
ในปี 2013 ด้วย HTML5 ทั้งหมดคุณสามารถละเว้นแอตทริบิวต์ "action" เพื่อส่งแบบฟอร์มด้วยตนเองได้
<form>
จริงๆแล้วส่วนย่อยการส่งแบบฟอร์มของร่าง HTML5 ปัจจุบันไม่อนุญาตให้ดำเนินการ = "" (แอตทริบิวต์ว่าง) มันผิดข้อกำหนด
จากอื่น ๆ คำตอบกองมากเกินนี้
action
หรือไม่ที่จะเว้นแอตทริบิวต์ all-together แต่ไม่ต้องปล่อยว่างไว้
คุณสามารถปล่อยแอตทริบิวต์การกระทำว่างไว้ได้ แบบฟอร์มจะส่งโดยอัตโนมัติในหน้าเดียวกัน
<form action="">
ตามข้อกำหนด w3cแอ็ตทริบิวต์การดำเนินการต้องไม่ว่างเปล่า URL ที่ถูกต้องโดยทั่วไป นอกจากนี้ยังมีคำอธิบายสำหรับบางสถานการณ์ที่อาจปล่อยแอตทริบิวต์การกระทำว่างไว้
การดำเนินการขององค์ประกอบคือค่าของแอตทริบิวต์ formaction ขององค์ประกอบหากองค์ประกอบเป็นปุ่มส่งและมีแอตทริบิวต์ดังกล่าวหรือค่าของแอตทริบิวต์การดำเนินการของเจ้าของแบบฟอร์มหากมีหรือสตริงว่าง
ดังนั้นทั้งคู่ยังคงใช้ได้และใช้งานได้:
<form action="">
<form action="FULL_URL_STRING_OF_CURRENT_PAGE">
หากคุณแน่ใจว่าผู้ชมของคุณใช้เบราว์เซอร์ html5 คุณสามารถละเว้นแอตทริบิวต์การดำเนินการ:
<form>
หากคุณส่งแบบฟอร์มโดยใช้ php โปรดใช้:
action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
คุณสามารถทำได้โดยใช้หน้าเดียวกันในแอตทริบิวต์การกระทำ: action='<yourpage>'