jQuery 通过名称标签jquery获取选择框选定的值
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/29362567/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
get selectbox selected value by name tag jquery
提问by chandoo
I have a form like this
我有一个这样的表格
<label>Select country</label>
<select name="country">
<option value="IND" selected="selected">India</option>
<option value="MY">Malaysia</option>
<option value="US">United states</option>
</select>
</label>
I want to get the value of selected country using jquery.
我想使用 jquery 获取所选国家/地区的值。
This is my code in jquery document block: My jquery version: jquery-1.10.1.js
这是我在 jquery 文档块中的代码:我的 jquery 版本:jquery-1.10.1.js
alert($('select[name="country"]').find(":selected").val());
alert($('select[name="country"] option:selected').val());
I dont like to call the selector by ID or class. Thanks in advance.
我不喜欢通过 ID 或类来调用选择器。提前致谢。
I couldn't write onChange for the country select-box. I need to execute ajax request on blur of the date input field(followup_date).
我无法为国家/地区选择框编写 onChange。我需要对日期输入字段(followup_date)的模糊执行ajax请求。
$('#followup_date').change(function(e) {
if($(this).val()!='')
{
//$('.tmslot').not(this).attr('checked', false);
var slot = $(this).val();
var country_id = $('select[name="country"] option:selected').val();
My problem is I am getting undefinedfor country_id.
我的问题是我对country_id未定义。
回答by Tim Osadchiy
Use .val()
on select
element not on selected option
:
.val()
在select
元素上使用而不是在选定的元素上使用option
:
$('select[name="country"]').on('change', function(){
alert($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select name="country">
<option value="IND" selected="selected">India</option>
<option value="MY">Malaysia</option>
<option value="US">United states</option>
</select>
回答by I'm Geeker
回答by Milind Anantwar
As per docs,
根据文档,
The .val() method is primarily used to get the values of form elements such as input, select and textarea. In the case of select elements, it returns null when no option is selected and an array containing the value of each selected option when there is at least one and it is possible to select more because the multiple attribute is present.
.val() 方法主要用于获取表单元素的值,例如 input、select 和 textarea。在 select 元素的情况下,当没有选择任何选项时,它返回 null,当至少有一个选项时,它返回一个包含每个选定选项的值的数组,因为存在 multiple 属性,因此可以选择更多。
You need to simply use .val()
with select elements jquery object to get selected option value:
您需要简单地使用.val()
选择元素 jquery 对象来获取选定的选项值:
$('select[name="country"]').val()
回答by ShirleyCC
if you want to get the option:
如果您想获得该选项:
alert($('select[name=country]').find(':selected').text());
alert($('select[name=country]').find(':selected').text());