2008-12-18 13 views
6

मेरे पास सबमिट बटन के साथ एक HTML फ़ॉर्म पर एक सूची बॉक्स है। सूची बॉक्स में एकाधिक चयन सक्षम हैं। मैं सूची बॉक्स में कई मानों का चयन करने में सक्षम हूं, लेकिन मुझे नहीं पता कि फ़ॉर्म को सबमिट किए जाने पर मूल्यों का चयन कैसे किया जाए। इसके अलावा, मैं सूची बॉक्स JavaScript का उपयोग करके करने के लिए उपयोगकर्ता उत्पन्न मूल्यों द्वारा जोड़ा जा रहा है, और मैं दो बातें बताने के लिए सक्षम होने के लिए चाहते हैं जब प्रपत्र सबमिट:एकाधिक चयनित मानों के साथ एक HTML सूची बॉक्स के चयन कैसे पोस्ट करें

  1. विकल्प उपयोगकर्ता द्वारा बॉक्स में जोड़ा क्या हैं?
  2. उपयोगकर्ता द्वारा बॉक्स में कौन से मूल्य चुने गए हैं?

क्या यह संभव है? धन्यवाद।

+2

यह संभव है ... लेकिन आप किस सर्वर-साइड भाषा का उपयोग कर रहे हैं? जैसा कि ऐसा लगता है कि आपके प्रश्नों का बड़ा हिस्सा है .. – Jack

उत्तर

4

नीचे आपको एक पृष्ठ का उदाहरण मिलता है।

ध्यान दें कि:

  • चयन तत्व (और किसी भी रूप तत्व) एक नाम की आवश्यकता है पोस्ट में शामिल किया जाना है।
  • चुनिंदा तत्व में केवल चयनित विकल्प पोस्ट किए जाएंगे।

क्या मान बॉक्स में उपयोगकर्ता द्वारा चुने जाते हैं?

जब उपयोगकर्ता फॉर्म सबमिट करता है तो केवल चयनित मान सर्वर पर भेजे जाएंगे। सर्वर पर आप जिस भाषा का उपयोग कर रहे हैं उसके आधार पर उन तक पहुंचने के विभिन्न तरीके हैं।

उपयोगकर्ता द्वारा बॉक्स में जोड़े गए विकल्प क्या हैं?

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

<!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"> 
    <head> 
    <title>Test of select box</title> 
    <script type="text/javascript"> 
     function addOpt(e) { 
     var o=document.createElement("option"); 
     //o.value= -e.options.length; 
     o.text = "Test " + e.options.length; 
     o.selected=true; 
     e.add(o,null); 
     } 
    </script> 
    </head> 
    <body> 
    <form method="post" action="mypage.html"> 
     <input type="button" onclick="addOpt(this.form.myselect)" value="Add option"/> 
     <br/> 
     <select id="myselect" name="mydata" multiple="multiple" size="10"> 
     <option value="0">Test 0</option> 
     <option value="1">Test 1</option> 
     <option value="2">Test 2</option> 
     </select> 
     <br/> 
     <input type="submit"/> 
    </form> 
    </body> 
</html> 
+2

[] – aleemb

+0

@aleemb का उपयोग कर जावास्क्रिप्ट के बिना संभवतः किया जा सकता है: [] जवाब कैसे जोड़ता है "उपयोगकर्ता द्वारा बॉक्स में जोड़े गए विकल्प क्या हैं" और "उपयोगकर्ता द्वारा बॉक्स में कौन से मूल्य चुने गए हैं"? यदि आप वास्तव में ऊपर जावास्क्रिप्ट को देखते हैं तो केवल चयन बॉक्स में विकल्प जोड़ते हैं, यह दर्शाते हुए कि पाठ का मूल्य मान के रूप में उपयोग किया जाएगा। – some

36

को वर्ग कोष्ठक अनुगामी, पीएचपी (और संभावना अन्य सर्वर भाषाओं के साथ अपने select नामकरण तक है) एक सरणी में डेटा डाल देंगे

पूर्व:

<form action="process.php" method="post"> 
    <select name="multiSelects[]" multiple="multiple" size="5"> 
    <option value="0">Zero</option> 
    <option value="1">One</option> 
    </select> 
    <input type="submit" /> 
</form> 

चयन सरणी में उपलब्ध हो जाएगा $_POST['multiSelects']

+1

यह नोड.जेएस/एक्सप्रेस में काम करता है।जेएस – prototype

+0

यह केवल PHP के साथ सर्वर-साइड भाषा – Ejaz

+1

@Ejay के रूप में काम करता है: यह किसी भी मानक अनुपालन सर्वर-साइड भाषा में कोडिंग के लायक काम करना चाहिए, – Mrchief

संबंधित मुद्दे