आप कर सकते थे, सैद्धांतिक रूप से कम से कम, अपने रूप में तीन submit
बटन होते हैं।
बटन दो मौजूदा 'कम महत्वपूर्ण' बटन (फॉर्म के आधे रास्ते से) है, बटन तीन आपके मौजूदा रूप से मौजूदा 'वास्तविक-सबमिट' बटन है।
बटन को छुपाया जाना चाहिए (सीएसएस display:none
याका उपयोग करके) और अपने वर्तमान 'वास्तविक-सबमिट' के समान कार्य करना चाहिए। मुझे लगता है कि यह अभी भी ब्राउज़र द्वारा पाया जाने वाला पहला बटन होगा, इसकी दृश्यता के बावजूद।
<form method="post" method="whatever.php" enctype="form/multipart">
<fieldset id="first">
<label>...<input />
<label>...<input />
<label>...<input />
<input type="submit" value="submit" style="visibility: hidden;" <!-- or "display: none" --> />
<input class="less_important" type="submit" value="submit" />
</fieldset>
<fieldset id="second">
<label>...<input />
<label>...<input />
<label>...<input />
<input type="submit" value="submit" class="actual_submit" />
</fieldset>
</form>
टिप्पणियों के जवाब में संपादित:
मैंने सोचा छिपा बटन भी डिफ़ॉल्ट रूप से अक्षम कर रहे थे? [Md5sum]
एक वैध बिंदु है, लेकिन मैं पोस्टिंग है, जिसमें तकनीक काम किया दोनों के लिए, इससे पहले कि केवल फ़ायरफ़ॉक्स (3.5.7, Ubuntu 9.10) में परीक्षण की गलती की। पूर्ण xhtml फ़ाइल चिपका दी गई है (नीचे) जो इन टिप्पणियों के बाद मेरे परीक्षण का आधार बनाती है।
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>3button form</title>
<link rel="stylesheet" type="text/css" href="css/stylesheet.css" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(
function() {
$('input[type="submit"]').click(
function(e){
alert("button " + $(this).attr("name"));
}
);
}
);
</script>
</head>
<body>
<form method="post" method="whatever.php" enctype="form/multipart">
<fieldset id="first">
<label>...<input />
<label>...<input />
<label>...<input />
<input name="one" type="submit" value="submit" style="display:none;" /><!-- or "display: none" -->
<input name="two" class="less_important" type="submit" value="submit" />
</fieldset>
<fieldset id="second">
<label>...<input />
<label>...<input />
<label>...<input />
<input name="three" type="submit" value="submit" class="actual_submit" />
</fieldset>
</form>
</body>
</html>
display: none
(डिफ़ॉल्ट बटन सत्ता के लिए पात्र परिणाम सेट में शामिल है, और) फार्म के एक सक्रिय हिस्सा होने से एक बटन को रोकने चाहिए; visibility: hidden
नहीं होना चाहिए। हालांकि इन दोनों मामलों में कुछ ब्राउज़रों द्वारा गलत हो गया है। अदृश्य पहले सबमिट बटन का सामान्य तरीका position: absolute;
है और इसे पृष्ठ से बाहर ले जाएं (उदाहरण के लिए बाएं: -4000 पीएक्स)। यह बदसूरत लेकिन भरोसेमंद है। अपने टैबिंडेक्स को बदलने का भी एक अच्छा विचार है, इसलिए यह अपेक्षित फॉर्म टैबबिंग ऑर्डर में हस्तक्षेप नहीं करता है।
कम से कम दो बिंदुओं को मुझे इस टिप्पणी में उठाना है। क्रम में:
- "सामान्य तरीका ..." मुझे अनजान था कि एक सामान्य तरीका था, और इस लक्ष्य को एक लक्ष्य प्राप्त करने की संभावना के रूप में प्रस्तुत किया, पूर्ण ज्ञान में कि लगभग निश्चित रूप से थे किसी भी बेहतर तरीके से, विशेष रूप से दिया गया है कि मुझे एक ही रूप में एकाधिक सबमिट बटन के लिए एक अच्छा कारण नहीं दिख रहा है।
- उपर्युक्त बिंदु की बाद की सजा को देखते हुए, मैं यह स्पष्ट करना चाहता हूं कि मैं ऐसा करने का समर्थन नहीं करता हूं। बिलकुल। यह एक बदसूरत, और गैर-अर्थपूर्ण, लगता है कि एक से अधिक सबमिट बटन है, ओपी के उदाहरण के साथ - एक बटन स्पष्ट रूप से सबमिट बटन नहीं होने पर।
- `स्थिति की धारणा: पूर्ण; बाएं: -4000 पीएक्स; 'मेरे साथ हुआ था, लेकिन यह' दृश्यता: छुपा; 'जैसा ही प्रभावशाली प्रतीत होता था, और मेरे पास किसी भी कारण से' स्थिति: पूर्ण; 'का सहज नापसंद है ... इसलिए मैं साथ गया वह विकल्प जो लिखने के समय मेरे लिए कम आपत्तिजनक था ... =)
मैं टैबिन्डेक्स के बारे में आपकी टिप्पणी की सराहना करता हूं, हालांकि, ऐसा कुछ था जिसे मैंने कभी भी सोचा नहीं था।
मुझे खेद है कि अगर मैं कुछ हद तक झपकी लग रहा हूं, तो देर हो चुकी है, मैं थक गया हूं ... yadda-yadda; मैं अपने रिटर्न होम के बाद से विभिन्न ब्राउज़रों में परीक्षण कर रहा हूं और ऐसा लगता है कि फ़ायरफ़ॉक्स 3.5+ एक ही व्यवहार देता है- विंडोज एक्सपी और उबंटू 9 .10 दोनों पर 'बटन वन' रिपोर्ट करना, सभी वेबकिट ब्राउज़र (मिडोरी, एपिफेनी, सफारी और क्रोम) असफल और 'बटन दो' रिपोर्ट करें।
तो यह निश्चित रूप से display: none;
सबमिट बटन पर एक असफल योग्य विचार है। जबकि visibility:hidden
कम से कम काम करता है।
जो से मेरा मतलब है कि मार 'दर्ज' शुरू हो रहा फार्म प्रस्तुत घटना, या रूप का पहला सबमिट बटन, की क्लिक करें घटना है कि क्या है कि पहले प्रस्तुत की परवाह किए बिना `था प्रदर्शन: कोई नहीं ; `या` दृश्यता: छुपा '।
कृपया ध्यान रखें कि मेरे jQuery कौशल सीमित हैं, इसलिए परीक्षण किए गए परीक्षण (मैं निष्पादन में होने वाले संघर्षों को रोकने और रोकने के लिए केवल एक समय में भाग गया था, उस समय टिप्पणी करता हूं कि मैंने उस समय नहीं चला था, दोनों प्रस्तुत किए गए हैं - एक, स्पष्ट रूप से, टिप्पणी की गई) अपर्याप्त और गैर-प्रतिनिधि हो सकता है।
<input type="submit" value="" onclick="return false;" style="opacity: 0">
बटन अभी भी पर प्रदान किया जाएगा:
यह सभी ब्राउज़रों में सच नहीं है, क्योंकि इस व्यवहार को बहुत पहले परिभाषित नहीं किया गया था (सामान्य रूप से HTML फॉर्म हमेशा और अभी भी अस्पष्टता का एक भयानक सेसपूल हैं)। आईई के पहले संस्करण इस तरह के सबमिशन के रूप में व्यवहार करेंगे जैसे सबमिट बटनों में से * * * दबाया गया है (क्योंकि यह तकनीकी रूप से मामला है)। – David