javascript - atscript - स्क्रिप्टिंग भाषा




एचटीएमएल फॉर्म और जावास्क्रिप्ट पुष्टिकरण (2)

प्रयत्न:

return answer;

फ़ंक्शन के अंत में और सुनिश्चित करें कि onclick विधि यह देता है। इस तरह:

<input type="submit" value="Edit" onclick="return confirmation()">

यह फ़ंक्शन रिटर्न झूठा बना देगा और फॉर्म को पोस्ट नहीं किया जाएगा।

मुझे एक फॉर्म और जावास्क्रिप्ट पुष्टिकरण सबमिट करने में समस्या हो रही है असल में, निम्नलिखित "जावास्क्रिप्ट" को तब बुलाया जाता है जब "सबमिट करें" बटन दबाया जाता है।

function confirmation() {
    var answer = confirm("Are you sure you wish to edit?")
    if (answer)
    {
        window.location = "#editform2";
    }
}

हालांकि, जब मैं ठीक से रद्द करने के बजाय रद्द करता हूं, तो जावास्क्रिप्ट सही तरीके से कार्यान्वित करता है, क्योंकि मैं एड्रेस बार देखता हूं और यह # editform2 को अपडेट नहीं करता है। प्रपत्र, हालांकि, अभी भी प्रस्तुत है। यह पृष्ठ को रीफ्रेश करने लगता है प्रपत्र से संबंधित भागों यहां दिए गए हैं:

//Form is encoded in PHP
<form method=\"post\">
//Form is in here
<input type=\"submit\" value=\"Edit\" onclick=\"confirmation()\">

तो यह प्रपत्र नहीं जानता कि यह कहां से हो रहा है, यह पृष्ठ को केवल ताज़ा करता है, और पृष्ठ प्रोसेसर के रूप में भी होता है इसलिए इसे संसाधित करने के बावजूद मैंने रद्द कर दिया और जावास्क्रिप्ट को उसी पेज पर रखना चाहिए। प्रसंस्करण को एक अलग पृष्ठ पर ले जाने के अलावा, मेरे समाधान क्या हैं?


यह इस तरह काम करता है क्योंकि यह एक निमंत्रण बटन है और प्रपत्र हर मामले में सबमिट किया जाता है। फ़ॉर्म में एक आईडी निर्दिष्ट करें और इनपुट प्रकार परिवर्तित करें:

<form method="post" id="formid">
<input type="button" value="Edit" onclick="confirmation()">

और क्लिक पर इस समारोह को कॉल करें:

function confirmation() {
    var answer = confirm("Are you sure you wish to edit?")
    if (answer)
    {
        document.getElementById("formid").submit();
    }
}





confirm