मैं अपनी आईडी पर पास होकर jQuery के माध्यम से चयन के सभी विकल्प कैसे प्राप्त कर सकता हूं?
मैं केवल उनके मूल्यों को पाने के लिए देख रहा हूं, पाठ को नहीं।
मैं अपनी आईडी पर पास होकर jQuery के माध्यम से चयन के सभी विकल्प कैसे प्राप्त कर सकता हूं?
मैं केवल उनके मूल्यों को पाने के लिए देख रहा हूं, पाठ को नहीं।
जवाबों:
उपयोग:
$("#id option").each(function()
{
// Add $(this).val() to your list
});
$.map
बहुत अधिक सुरुचिपूर्ण और कम त्रुटि प्रवण है (नीचे देखें)।
$('#id option').map((index, option) => option.value)
: ध्यान दें कि "वेनिला" जेएस map
फ़ंक्शन ( (item, index) =>
) की तुलना में कॉलबैक हस्ताक्षर कैसे उलट दिया जाता है
मुझे jQuery का पता नहीं है, लेकिन मुझे पता है कि यदि आपको चयनित तत्व मिलता है, तो इसमें एक 'विकल्प' ऑब्जेक्ट होता है।
var myOpts = document.getElementById('yourselect').options;
alert(myOpts[0].value) //=> Value of the first option
$.map
शायद ऐसा करने का सबसे कारगर तरीका है।
var options = $('#selectBox option');
var values = $.map(options ,function(option) {
return option.value;
});
$('#selectBox option:selected')
यदि आप केवल वही चुन सकते हैं जो आप चुन सकते हैं ।
पहली पंक्ति सभी चेकबॉक्स का चयन करती है और उनके jQuery तत्व को एक चर में डालती है। हम तब .map
jQuery के फ़ंक्शन का उपयोग उस चर के तत्वों में से प्रत्येक के लिए एक फ़ंक्शन लागू करने के लिए करते हैं; हम जो कुछ कर रहे हैं, वह प्रत्येक तत्व के मूल्य को वापस कर रहा है क्योंकि हम इसकी परवाह करते हैं। क्योंकि हम उन्हें मानचित्र फ़ंक्शन के अंदर वापस कर रहे हैं, यह वास्तव में अनुरोध किए गए मानों की एक सरणी बनाता है।
$('#selectBox').val()
चयनित मानों की एक सरणी लौटाएगा।
कुछ उत्तर का उपयोग करता है each
, लेकिन map
यहाँ एक बेहतर विकल्प है IMHO:
$("select#example option").map(function() {return $(this).val();}).get();
map
JQuery में (कम से कम) दो कार्य हैं। थॉमस पीटरसन का उत्तर "उपयोगिताएँ / jQuery.map" का उपयोग करता है; यह उत्तर "ट्रैवर्सिंग / मैप" (और इसलिए थोड़ा क्लीनर कोड) का उपयोग करता है।
यह इस बात पर निर्भर करता है कि आप मूल्यों के साथ क्या करने जा रहे हैं। यदि आप, मान लें कि, किसी फ़ंक्शन से मान वापस करना चाहते हैं, map
तो शायद बेहतर विकल्प है। लेकिन अगर आप सीधे उन मूल्यों का उपयोग करने जा रहे हैं जो आप चाहते हैं each
।
get()
एक मूल सरणी के साथ काम करने के लिए लौटी हुई वस्तु के लिए बहुत सामान्य है ।" - api.jquery.com/map
text()
इसके बजाय बदल गया val()
। धन्यवाद ! (मैं आपको 1000 से अधिक जाने का कारण बना ;->
)
$('select#id').find('option').each(function() {
alert($(this).val());
});
$("#id option").each(function()
{
$(this).prop('selected', true);
});
यद्यपि, सही तरीका तत्व की DOM प्रॉपर्टी को सेट करना है, जैसे:
$("#id option").each(function(){
$(this).attr('selected', true);
});
यह #myselectbox
आप के लिए एक अच्छा साफ सरणी में विकल्प मूल्यों डाल देंगे:
// First, get the elements into a list
var domelts = $('#myselectbox option');
// Next, translate that into an array of just the values
var values = $.map(domelts, function(elt, i) { return $(elt).val();});
$.map(domelts, elt=> $(elt).val())
आप अपने सभी "चयनित मूल्यों" को चेकबॉक्स के नाम से ले सकते हैं और उन्हें "," द्वारा अलग किए गए स्टिंग में प्रस्तुत कर सकते हैं।
ऐसा करने का एक अच्छा तरीका jQuery के $ .map () का उपयोग करना है:
var selected_val = $.map($("input[name='d_name']:checked"), function(a)
{
return a.value;
}).join(',');
alert(selected_val);
select
और option
नहीं।
इसका उपयोग करने का सबसे कारगर तरीका है $.map()
उदाहरण:
var values = $.map($('#selectBox option'), function(ele) {
return ele.value;
});
आप उसके लिए निम्नलिखित कोड का उपयोग कर सकते हैं:
var assignedRoleId = new Array();
$('#RolesListAssigned option').each(function(){
assignedRoleId.push(this.value);
});
बहुविकल्पी विकल्प के लिए:
$('#test').val()
चयनित मूल्यों की सूची।
$('#test option').length
कुल विकल्पों की संख्या (दोनों चयनित और चयनित नहीं)
यह jQuery के साथ एक सरल स्क्रिप्ट है:
var items = $("#IDSELECT > option").map(function() {
var opt = {};
opt[$(this).val()] = $(this).text();
return opt;
}).get();
var selectvalues = [];
for(var i = 0; i < items.length; i++) {
for(key in items[i]) {
var id = key;
var text = items[i][key];
item = {}
item ["id"] = id;
item ["text"] = text;
selectvalues.push(item);
}
}
console.log(selectvalues);
copy(selectvalues);
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
चयनित आइटम के सभी मूल्यों, ग्रंथों या मूल्य, या चयनित आइटम के पाठ को प्राप्त करने के लिए jquery में एक सरल उदाहरण है
$('#nCS1 > option').each((index, obj) => {
console.log($(obj).val());
})
printOptionValues = () => {
$('#nCS1 > option').each((index, obj) => {
console.log($(obj).val());
})
}
printOptionTexts = () => {
$('#nCS1 > option').each((index, obj) => {
console.log($(obj).text());
})
}
printSelectedItemText = () => {
console.log($('#nCS1 option:selected').text());
}
printSelectedItemValue = () => {
console.log($('#nCS1 option:selected').val());
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select size="1" id="nCS1" name="nCS1" class="form-control" >
<option value="22">Australia</option>
<option value="23">Brunei</option>
<option value="33">Cambodia</option>
<option value="32">Canada</option>
<option value="27">Dubai</option>
<option value="28">Indonesia</option>
<option value="25">Malaysia</option>
</select>
<br/>
<input type='button' onclick='printOptionValues()' value='print option values' />
<br/>
<input type='button' onclick='printOptionTexts()' value='print option texts' />
<br/>
<input type='button' onclick='printSelectedItemText()' value='print selected option text'/>
<br/>
<input type='button' onclick='printSelectedItemValue()' value='print selected option value' />
$("input[type=checkbox][checked]").serializeArray();
या:
$(".some_class[type=checkbox][checked]").serializeArray();
परिणाम देखने के लिए:
alert($("input[type=checkbox][checked]").serializeArray().toSource());
छोटा रास्ता
$(() => {
$('#myselect option').each((index, data) => {
console.log(data.attributes.value.value)
})})
या
export function GetSelectValues(id) {
const mData = document.getElementById(id);
let arry = [];
for (let index = 0; index < mData.children.length; index++) {
arry.push(mData.children[index].value);
}
return arry;}