पर सक्रिय सबमिट करने के लिए जावास्क्रिप्ट का उपयोग करें, मेरे पास एक HTML पृष्ठ पर एक फॉर्म है जिसमें कई सबमिट बटन हैं जो विभिन्न कार्रवाइयां करते हैं। हालांकि, जब उपयोगकर्ता एक टेक्स्ट इनपुट में मूल्य टाइप कर रहा है और हिट प्रवेश करता है, तो ब्राउज़र आमतौर पर कार्य करते हैं जैसे अगली सबमिट बटन अनुक्रमिक रूप से सक्रिय किया गया था। मैं किसी विशेष कार्रवाई होने के लिए चाहते हैं, इसलिए एक ही समाधान मैंने पाया अदृश्य में डालने के लिए HTML में बटन प्रस्तुत सीधे विचाराधीन पाठ आदानों के बाद, इस तरह था:परिवर्तन कुंजी को
<input type="text" name="something" value="blah"/>
<input type=submit name="desired" value="Save Earth" style="display: none"/>
...
<input type=submit name="something_else" value="Destroy Earth" />
...
<input id="foobar" type=submit name="desired" value="Save Earth" />
यह सबसे ब्राउज़रों में एक आकर्षण की तरह काम करता है, सिवाय इसके कि यह सफारी और क्रोम जैसे वेबकिट ब्राउज़र में नहीं है। किसी कारण से वे अदृश्य सबमिट बटन पर छोड़ देते हैं। मैं यह पता लगाने की कोशिश कर रहा हूं कि एंटर कुंजी प्रेस को कैसे रोकें और जावास्क्रिप्ट का उपयोग करके उचित सबमिशन को सक्रिय करें, लेकिन मैं इसे काम करने में सक्षम नहीं हूं। उचित जमा पर कुंजीडाउन और सेटिंग फोकस को रोकना काम नहीं करता है।
क्या जावास्क्रिप्ट का उपयोग करने का कोई तरीका है या अन्यथा यह चुनने के लिए कि सबमिट बटन का उपयोग तब किया जाएगा जब उपयोगकर्ता HTML फॉर्म पर टेक्स्ट इनपुट में एंटर कुंजी दबाएगा?
संपादित करें: स्पष्टीकरण के लिए, फ़ॉर्म को मूल रूप से "काम" करने के लिए जावास्क्रिप्ट की आवश्यकता नहीं हो सकती है। मुझे कोई परवाह नहीं है कि एंटर कुंजी सबमिशन वेबकिट ब्राउज़र पर जावास्क्रिप्ट के बिना अवांछित है, लेकिन मैं सबमिट बटन के ऑर्डर को हटा या बदल नहीं सकता।
यह मैंने कोशिश की है, यह वेबकिट ब्राउज़र में सबमिशन व्यवहार को नहीं बदलेगा।
फोकस() को निम्नलिखित कोड में पर क्लिक करने के लिए क्या काम किया गया है() पर क्लिक करें।
document.onkeypress = processKey;
function processKey(e)
{
if (null == e)
e = window.event ;
if (e.keyCode == 13) {
document.getElementById("foobar").click(); // previously: focus()
}
}
संपादित करें: अंतिम समाधान: प्रत्येक ब्राउज़र के
काम करता है और जब आवश्यक कुंजी दर्ज करें को बीच में रोक:
HTML:
<input type="text" name="something" value="blah"
onkeydown="return processKey(event)" />
<input type=submit name="desired" value="Save Earth" style="display: none"/>
...
<input type=submit name="something_else" value="Destroy Earth" />
...
<input id="foobar" type=submit name="desired" value="Save Earth" />
जावास्क्रिप्ट:
function processKey(e)
{
if (null == e)
e = window.event ;
if (e.keyCode == 13) {
document.getElementById("foobar").click();
return false;
}
}
नीचे मेरी उदाहरण की कोशिश करो। e.keycode – Tester101