सेल्फ पेज पर HTML फॉर्म जमा करें


103

मुझे खुद को सबमिट करने के लिए एक HTML फॉर्म चाहिए। मैं actionविशेषता का उपयोग कैसे करूं ?

  1. <form action="">
  2. <form action="#">
  3. <form action="some/address">
  4. <form>

कौन सा बेहतर था?


1
मुझे आशा है कि आपने इस पोस्ट को देखा है stackoverflow.com/questions/1131781/…
तारिकुलज़म

आपके दस्तावेज़ का <doctype> क्या है ?? यह आपको जवाब देने में मदद करेगा।
मिल्के पैटर

बस सरल एक्शन
एट्रीब्यूशन का

जवाबों:


124

2013 में, सभी एचटीएमएल 5 सामानों के साथ, आप केवल फॉर्म सबमिट करने के लिए 'एक्शन' विशेषता को छोड़ सकते हैं

<form>

दरअसल, वर्तमान एचटीएमएल 5 ड्राफ्ट का फॉर्म सबमिशन सबसिक्शन एक्शन = "" (खाली विशेषता) की अनुमति नहीं देता है। यह स्पेसिफिकेशन के खिलाफ है।

से यह अन्य स्टैक ओवरफ़्लो जवाब


1
मैंने <! Php $ _PHP_SELF?> का उपयोग किया और त्रुटि मिली कि कार्रवाई रिक्त नहीं हो सकती है, मुझे लगता है कि बीमार सिर्फ इसे छोड़ दें
ड्रयूडिन

2
मैं उलझन में हूं। क्या यह w3 actionसभी को एक साथ छोड़ने के लिए वैध है , लेकिन इसे खाली नहीं छोड़ना है?
मिस्टर मार्टिन

क्या मुझे $ _GET या $ _POST के मापदंडों का उपयोग करने की आवश्यकता है?
काली

21

आप क्रिया विशेषता को खाली छोड़ सकते हैं। फॉर्म अपने आप उसी पेज में सबमिट हो जाएगा।

<form action="">

डब्ल्यू 3 सी विनिर्देश के अनुसार , एक्शन विशेषता सामान्य रूप से गैर-खाली वैध यूआरएल होनी चाहिए। कुछ स्थितियों के लिए एक स्पष्टीकरण भी है जिसमें कार्रवाई विशेषता को खाली छोड़ा जा सकता है।

एक तत्व की कार्रवाई तत्व के निर्माण की विशेषता का मूल्य है, यदि तत्व एक सबमिट बटन है और इस तरह की एक विशेषता है, या इसके फॉर्म के मालिक की एक्शन विशेषता का मूल्य है, अगर यह एक है, या फिर खाली स्ट्रिंग है।

इसलिए वे दोनों अभी भी मान्य हैं और काम करते हैं:

<form action="">
<form action="FULL_URL_STRING_OF_CURRENT_PAGE">

यदि आप सुनिश्चित हैं कि आपके दर्शक html5 ब्राउज़रों का उपयोग कर रहे हैं, तो आप एक्शन विशेषता को छोड़ भी सकते हैं:

<form>

क्या आप इस बात की पुष्टि कर सकते हैं कि 'एक्शन' विशेषता को खाली छोड़ा जा सकता है और उसे मान्य किया जा सकता है?
मिल्के पैटर

4
मान्य नहीं है। : तत्व रूप पर विशेषता कार्रवाई के लिए खराब मान: गैर-रिक्त होना चाहिए।
Azd325

2
HTML5 कल्पना के अनुसार एक खाली स्ट्रिंग कार्रवाई के रूप में अनुमति नहीं है: w3c.github.io/html/sec-forms.html#element-attrdef-form-action
थॉमस

1
यही एक चीज है जो मेरे लिए काम करती है। <br/> लिंक क्रिया और निर्माण सामग्री विशेषताएँ, यदि निर्दिष्ट की गई हैं, तो उनके पास एक मान होना चाहिए जो रिक्त स्थानों से घिरा हुआ एक वैध गैर-खाली URL है ........ यदि यह एक है, या फिर खाली स्ट्रिंग है।
जोएलबोंडुरेंट

"मान्य नहीं करता है" की अवधारणा बेतुकी है क्योंकि एकमात्र व्यक्ति जो आपके XML को मान्य कर सकता है वह आप हैं। यह XML का बिंदु है - आप नियमों का एक गुच्छा कहते हैं जिसे आप अपने XML दस्तावेज़ के लिए सही रखना चाहते हैं, उन्हें DTD में एनकोड करें और XML पार्सर को भ्रामक रूप से कठिन पार्सिंग लें। यह एक कारण है कि XML आज भी महत्वपूर्ण है - आप जिस भी मॉडल को चाहते हैं, उसे ले सकते हैं, चाहे वह JSON हो, पाठ हो, csv हो, उस प्रारूप से XML में एक सरल ट्रांसफार्मर लिखें, उस XML के लिए DTD लिखें, और bam, आपको ज़रूरत छोड़नी चाहिए अपना सत्यापनकर्ता लिखने के लिए, XML ने पहले ही ऐसा कर लिया था!
दिमित्री

21

उपयोग करें ?:

<form action="?" method="post">

यह उपयोगकर्ता को उसी पृष्ठ पर वापस भेज देगा।


यह कमाल का है!
beppe9000

3
इतना कमाल नहीं है। यह वर्तमान URL के सभी क्वेरी स्ट्रिंग को हटा देगा यदि यह उनके पास है।
OMA

1
मैं क्वेरी स्ट्रिंग्स निकालना चाहता हूं: 3
VoidZA


-1

आप इसे एक्शन विशेषता पर एक ही पृष्ठ का उपयोग कर सकते हैं: action='<yourpage>'

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.