2012-09-23 14 views
10

मेरे पास एक से अधिक चयन सूची है जिसमें 5 से अधिक विकल्प हैं, और मैं उपयोगकर्ता द्वारा चुने गए विकल्पों के चयन की संख्या गिनना चाहता हूं।एक बहु-चयन बॉक्स में चयनों की संख्या की गणना

जावा स्क्रिप्ट का उपयोग करके इसे कैसे करें?

मैं निम्नलिखित की कोशिश की लेकिन यह मेरे लिए काम नहीं किया: अग्रिम में

var x = document.getElementById("preference").count; 

धन्यवाद।

+0

> var x = document.getElementById ("वरीयता")। गिनती; – coolmego

उत्तर

21

मान लें foo चयन की आईडी है।

आप सामान्य जावास्क्रिप्ट का उपयोग करते हैं:

var options = document.getElementById('foo').options, count = 0; 
for (var i=0; i < options.length; i++) { 
    if (options[i].selected) count++; 
} 

आप jQuery का उपयोग करते हैं:

var count = $('#foo option:selected').length; 
+0

धन्यवाद, इसकी वर्किंग ठीक है। क्या कोई ऐसी संपत्ति है जो लूप का उपयोग करने के बजाय चयन की संख्या की जांच कर सकती है, क्योंकि हम "चेकबॉक्स" में उपयोग करते हैं। चेक किए गए प्रॉपर्टी का उपयोग किया जा सकता है। – coolmego

+0

@coolmego नहीं, ऐसी कोई संपत्ति नहीं है। 'चेकबॉक्स' के लिए, हाँ, 'चेक' संपत्ति का उपयोग करें। – xdazz

+1

क्या आप मूल बातें से शुरू जावास्क्रिप्ट के लिए एक अच्छा ट्यूटोरियल सुझा सकते हैं। – coolmego

1

उपयोग :selected चयनकर्ता, इस तरह:

$('#example option:selected').length; 
2

आप प्राप्त करने के लिए इस कोशिश कर सकते हैं एकाधिक चयन बॉक्स उपयोगकर्ता चयनित विकल्प गिनती और उनके चुने हुए नाम। इस लिंक http://jsfiddle.net/N6YK8/8/

function getCount(){ 
      var comboBoxes = document.querySelectorAll("select"); 
      var selected = []; 
      for(var i=0,len=comboBoxes.length;i<len;i++){ 
        var combo = comboBoxes[i]; 
        var options = combo.children; 
        for(var j=0,length=options.length;j<length;j++){ 
         var option = options[j]; 
         if(option.selected){ 
          selected.push(option.text); 
         } 
        } 
      } 
      alert("Selected Options '" + selected + "' Total Count "+ selected.length); 
     } 
0

प्रयास करें तो < IE8 एक चिंता का विषय नहीं है, आप document.querySelectorAll("option:checked") की तरह एक एक लाइनर कर सकते हैं सभी चयनित विकल्प प्राप्त करने के।

-1
function SelectPage(elem) 
{ 
    alert(elem); 
} 
<select id="page" name="section" onChange="SelectPage(this);" id="num"> 
    <option value="">Select Section</option> 
    <option value="1">Page-1</option> 
    <option value="2">Page-2</option> 
    <option value="3">Page-3</option> 
    <option value="4">Page-4</option> 
    <option value="5">Page-5</option> 
</select> 
+0

आप इसे अपने फ़ंक्शन 'var len = docment.getElementById (" num ") में भी उपयोग कर सकते हैं। विकल्प; अलर्ट ("हैलो" + लेन। लम्बाई); ' –

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