Получете избрания текст от падащия списък (изберете поле) с помощта на jQuery

Как да получите избрания текст (не е избрана стойност) от падащия списък в jQuery?

2078
29 окт. Хадар е на 29 октомври. 2009-10-29 15:02 '09 в 15:02 2009-10-29 15:02
@ 32 отговора
  • 1
  • 2
 $("#yourdropdownid option:selected").text(); 
3461
29 окт. отговорът е даден 29 октомври. 2009-10-29 15:05 '09 в 15:05 2009-10-29 15:05

Опитайте следното:

 $("#myselect :selected").text(); 
border=0

За падащия списък ASP.NET можете да използвате следния селектор:

 $("[id*='MyDropDownId'] :selected") 
244
29 окт. Отговорът е даден от kgiannakakis на 29 октомври. 2009-10-29 15:04 '09 в 15:04 2009-10-29 15:04

Отговори, публикувани тук, например:

 $('#yourdropdownid option:selected').text(); 

не работи за мен, но е:

 $('#yourdropdownid').find('option:selected').text(); 

Може би това е по-стара версия на jQuery.

190
19 марта '12 в 14:41 2012-03-19 14:41 отговорът е даден JYX 19 март '12 в 14:41 2012-03-19 14:41

Ако вече имате падащ списък в променливата, това е, което работи за мен:

 $("option:selected", myVar).text() 

Другите отговори на този въпрос ми помогнаха, но в крайна сметка, jQuery $ forum (това + "опция: избрана"). attr ("rel") избраната опция не работи в IE , тя помогна най-много.

Update: поправена връзка по-горе

95
04 февр. Отговорът е даден от Кърк Лиехон на 04 февруари. 2012-02-04 08:17 '12 в 8:17 ч. 2012-02-04 08:17
 $("option:selected", $("#TipoRecorde")).text() 
61
16 авг. отговорът е даден от Рафаел 16 август. 2011-08-16 20:56 '11 в 20:56 2011-08-16 20:56

$("#DropDownID").val() ще даде избраната стойност на индекса.

53
14 нояб. Отговорът е даден Neeraj 14 Nov. 2011-11-14 12:22 '11 в 12:22 2011-11-14 12:22

Работи за мен:

 $('#yourdropdownid').find('option:selected').text(); 

jQuery версия: 1.9.1

53
25 сент. Отговорът е даден на Бинита Бхарати на 25 септември 2013-09-25 10:36 '13 в 10:36 2013-09-25 10:36

Работи за мен.

 $("#dropdownid").change(function() { alert($(this).find("option:selected").text()); }); 

Ако елементът се създава динамично

 $(document).on("change", "#dropdownid", function() { alert($(this).find("option:selected").text()); }); 
51
14 авг. Отговорът е даден на Прабгагаран 14 август. 2015-08-14 14:12 '15 в 14:12 2015-08-14 14:12

За текста на избрания елемент използвайте:

 $('select[name="thegivenname"] option:selected').text(); 

За стойността на избрания елемент използвайте:

 $('select[name="thegivenname"] option:selected').val(); 
41
25 янв. Kamrul отговори на 25 януари 2013-01-25 02:22 '13 в 2:22 2013-01-25 02:22

Различни начини

 1. $("#myselect option:selected").text(); 2. $("#myselect :selected").text(); 3. $("#myselect").children(":selected").text(); 4. $("#myselect").find(":selected").text(); 
32
03 авг. отговорът е даден Salim 03 aug. 2014-08-03 22:39 '14 в 22:39 ч. 2014-08-03 22:39
 $("#dropdownID").change(function(){ alert($('option:selected', $(this)).text()); }); 
28
01 февр. Отговорът е даден NJ 01 Feb. 2014-02-01 08:55 '14 в 8:55 2014-02-01 08:55
 var someName = "Test"; $("#<%= ddltest.ClientID %>").each(function () { $('option', this).each(function () { if ($(this).text().toLowerCase() == someName) { $(this).attr('selected', 'selected') }; }); }); 

Това ще ви помогне в правилната посока. Горният код е напълно тестван, ако се нуждаете от повече помощ, уведомете ме.

26
07 окт. отговорът е даден Zarni 07 oct. 2010-10-07 13:09 '10 в 13:09 2010-10-07 13:09

За тези, които използват списъци на SharePoint и не искат да използват дълъг генериран идентификатор, това ще работи:

 var e = $('select[title="IntenalFieldName"] option:selected').text(); 
18
06 нояб. отговор, даден от FAA 06 ноември 2013-11-06 00:38 '13 в 0:38 2013-11-06 00:38

Моля, използвайте това

 var listbox = document.getElementById("yourdropdownid"); var selIndex = listbox.selectedIndex; var selValue = listbox.options[selIndex].value; var selText = listbox.options[selIndex].text; 

След това, моля, докладвайте "selValue" и "selText". Получавате маркираната падаща стойност и текста.

18
14 мая '15 в 17:21 2015-05-14 17:21 отговорът беше даден от Mohammed Shaheen MK на 14 май в 17:21 часа 2015-05-14 17:21
  $("#selectID option:selected").text(); 

Вместо #selectID можете да използвате всеки jQuery селектор, като .selectClass , използвайки класа.

Както е посочено в документацията тук .

Избраният селектор работи за <опционални елементи. Той не работи за флагове или радио входове; употреба :checked за тях.

.text () Според документацията тук .

Вземете комбинираното текстово съдържание на всеки елемент в съвкупността от съвпадащи елементи, включително техните потомци.

По този начин можете да вземете текст от всеки HTML елемент, като използвате метода .text() .

Обърнете се към документацията за по-дълбоко обяснение.

16
30 янв. Nikhil Agrawal отговор Jan 30 2014-01-30 17:29 '14 в 17:29 2014-01-30 17:29
 $("select[id=yourDropdownid] option:selected").text() 

Тя работи чудесно

14
23 апр. Отговор, даден от Thangamani Palanisamy 23 април 2013-04-23 13:04 '13 в 13:04 2013-04-23 13:04

За да получите избраната стойност, използвайте

 $('#dropDownId').val(); 

и за да получите текста на избрания елемент, използвайте този ред:

 $("#dropDownId option:selected").text(); 
12
23 янв. Отговор, даден от Mojtaba Jan 23 2016-01-23 12:07 '16 в 12:07 2016-01-23 12:07
 $('#id').find('option:selected').text(); 
12
11 апр. Отговорът е даден от Никул на 11 април. 2015-04-11 12:39 '15 в 12:39 2015-04-11 12:39

Изберете текста и избраната стойност от падащия списък / изберете събитие за промяна в jQuery

 $("#yourdropdownid").change(function() { console.log($("option:selected", this).text()); //text console.log($(this).val()); //value }) 
10
19 нояб. Отговор, даден от Sandeep Shekhawat 19 ноември 2015-11-19 08:36 '15 в 8:36 ч. 2015-11-19 08:36

Употреба:

 ('#yourdropdownid').find(':selected').text(); 
9
31 июля '14 в 18:11 2014-07-31 18:11 отговорът е даден kishore 31 юли 14 в 18:11 2014-07-31 18:11
 var e = document.getElementById("dropDownId"); var div = e.options[e.selectedIndex].text; 
7
04 янв. Отговорът е даден Kalaivani M 04 Ян. 2017-01-04 15:53 '17 в 15:53 2017-01-04 15:53

Следното работи за мен:

 $.trim($('#dropdownId option:selected').html()) 
7
17 сент. Отговор, даден от Мохамад Даян на 17 септември. 2015-09-17 08:13 '15 в 8:13 AM 2015-09-17 08:13

В брака

 <a class="uibutton confirm addClient" href="javascript:void(0);">ADD Client</a> <input type="text" placeholder="Enter client name" style="margin: 5px;float: right" class="clientsearch large" /> <select class="mychzn-select clientList"> <option value="">Select Client name....</option> <option value="1">abc</option> </select>  $(this).siblings('select').children(':selected').text() 
7
05 дек. Отговорът е даден на вино. 2014-12-05 09:33 '14 в 9:33 2014-12-05 09:33

опитате:

 $var = jQuery("#dropdownid option:selected").val(); alert ($var); 

Или, за да получите текста на опцията, използвайте text() :

 $var = jQuery("#dropdownid option:selected").text(); alert ($var); 

Повече информация:

6
09 марта '17 в 10:03 2017-03-09 10:03 отговорът е даден от Vishal Thakur март 09 '17 в 10:03 2017-03-09 10:03

Тази работа за мен:

 $("#city :selected").text(); 

Използвам jQuery 1.10.2

6
09 июля '15 в 5:00 2015-07-09 05:00 Отговорът е даден от Rhaymand Tatlonghari 09 юли '15 в 5:00 часа 2015-07-09 05:00

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <select id="selectnumber"> <option value="1">one</option> <option value="2">two</option> <option value="3">three</option> <option value="4">four</option> </select> </div> </form> </body> </html> 

2019

09 авг. Отговорът е даден Bhanu pratap 09 август. 2016-08-09 20:01 '16 в 20:01 ч. 2016-08-09 20:01

Ако искате да получите резултат под формата на списък, използвайте:

 x=[]; $("#list_id").children(':selected').each(function(){x.push($(this).text());}) 
3
19 янв. отговорът се дава макс. 19 януари 2017-01-19 00:56 '17 в 0:56 2017-01-19 00:56

Аз лично го предпочитам

 $(this).find("option:selected").text(); 

Ако в полето за избор имате optgroup , горният код ще работи добре, this поле за избор.

1
08 авг. Отговорът е даден рок звезда 08 август. 2018-08-08 07:52 '18 в 7:52 ч. 2018-08-08 07:52

Просто опитайте следния код.

 var text= $('#yourslectbox').find(":selected").text(); 

връща текста на избраната опция.

1
13 нояб. Отговорът е даден от Muddasir23 13 ноември 2018-11-13 09:03 '18 в 9:03 2018-11-13 09:03
 $("#dropdownid option:selected").text(); 

ако използвате asp.net и пишете

 <Asp:dropdownlist id="ddl" runat="Server" /> 

тогава трябва да използвате

 $('#<%=ddl.Clientid%> option:selected').text(); 
0
21 мая '18 в 14:01 2018-05-21 14:01 отговорът е даден от Маниш Сингх 21 май, 18 в 14:01 ч. 2018-05-21 14:01
  • 1
  • 2

Други въпроси относно етикетите или Ask a Question