如何获取组合框中的选定值?

3
如果我有一个像这样的表单。
<form name="myform" action="" method="POST">
<select name="mydropdown">
<option value="A">AAA</option>
<option value="B">BBB</option>
<option value="C">CCC</option>
</select>
</form>

对于单选框,我会这样做:
var type = $(this).find('input:radio[name="ctype"]:checked').val() || '';

但是我无法在组合框上运行此操作。

如何获取组合框中所选选项的值?

更新:

它在一个包含多个表单的网页上被调用,因此我需要从this特定的组合框中获取所选值。

这是我如何从文本框和单选按钮中获取值的方法。

$('form').live('submit', function(){

   var title = this.elements.title.value;
   var type  = $(this).find('input:radio[name="ctype"]:checked').val() || '';
   var sect  = ?

   ...

我本来想找到这个重复的问题并将其关闭,但是我很惊讶在这么短的时间内它得到了如此多不同的答案。其中大部分都是错误的并已经被编辑过,但是恭喜@leandre_b第一个回答正确并获得了一些里程碑式的声望。 - Nick Larsen
6个回答

3

简单来说:

$('select[name="mydropdown"]').val();

更新:

当在表单中时:

$('form').live('submit', function(){

   var value_of_dropdown  = $(this).find('select[name="mydropdown"]').val();

   ...

我已经更新了帖子,使其更加精确。我需要它在一个具有多个表单的网页上。因此,当提交按钮被按下时,我需要从this组合框中获取所选值。 - Sandra Schlichting

1

对于选择框,只需使用val()即可获取所选值。

$('select[name="mydropdown"]').val();

编辑:我修改了回复,因为我记得有一个名为mydropdown的id :)


1
没有ID为"mydropdown"的元素。 - George Cummins
我在页面上有多个表单,所以当提交按钮被按下时,我需要从“此”表单获取值。已更新帖子并附上示例。 - Sandra Schlichting

1
$('select[name="mydropdown"] option:selected').val()

更新:

    $('form').live('submit', function(){

       var value_of_dropdown  = $(this).find('select[name="mydropdown"] option:selected').val();

       ...
  });

这个能修改以适用于“这个”表格吗?已更新帖子以更精确。 - Sandra Schlichting

0
使用jQuery,就像这样去做:
$('select').val();

0
$('select[name="mydropdown"]').change(function() {
   $('select[name="mydropdown"]').val();
});

请至少使用 $(this),不要重复选择器。 - Sean McMillan
此外,这不是 OP 所要求的,而且这段代码... 做了无用功。 - Nick Larsen
抱歉如果我误读了您的要求,是的,我可以使用这个,谢谢。 - abhijit

0

使用 JavaScript 获取所选值:

var countsw=document.getElementById("controlid").options[document.getElement.getElementById("controlid").selectedIndex].value;  

使用此代码,即使客户端控件具有 runat="server" 属性用于服务器端,您也可以获取所选组合框的值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接