如何使用jquery在html中获取选定的选项

How to get the selected option in an html using jquery

本文关键字:选项 获取 何使用 jquery html      更新时间:2023-09-26

我想检索我选择的选项的id。在这里你可以看到我的HTML。

<select name="zaal" id="zaal">
    <DIV CONTENTEDITABLE="FALSE" ID="MACONTAINER" MACONSTRAINT="" MAPARAMETER="ZALEN">
        <DIV CONTENTEDITABLE="TRUE" ID="MAITEM">
            <option value="~@ITEM.ID~" id="ZAALNAME">~ITEM.ID~, ~ITEM.NAME~</option>
        </DIV>
    </DIV>
</select>

我是这样做的。

var selectVal = $("#zaal :selected").val();
var id = selectVal.substring(1);
console.log("id is: " + selectVal);

但由于某种原因,它不起作用。

有人可以帮忙吗?

编辑

好的,div 是问题所在。但是我需要这些来从我的数据库中获取我的值。所以我认为我需要找到另一种解决方案,而不是选择。

$("#zaal option:selected").attr('value'); // will return you ~@ITEM.ID~

获取id

$("#zaal option:selected").attr('id'); // will return you ZAALNAME

要获得有关选择更改的id,请尝试以下操作:

$('#zaal').on('change', function() {
  // To get id
  $('option:selected', this).attr('id');
  $('option:selected', this).attr('value'); // return the value of selected option
  // To get the select box value
  var value = this.value;
});

也许可以尝试:

$("#zaal option:selected").val();

另外,尝试将div 移动到选择元素之外。

看看这个问题:

和 <选择> 标签

您只能将<option><optgroup>放在<select>内。如果你想把其他任何东西放在那里,你必须自己做一些清单。

你为什么要把任何div 放在一个选择中?


如果我把你给我的 HTML(带有编辑过的字符串)放在 Google Chome 中,这就是你的代码:

<select name="zaal" id="zaal">
  <option value="x" id="ZAALNAME">X, Y</option>
</select>
$("#zaal option[value='0']").text() 

试试这个:

var selectVal = $("#zaal option:selected").val();
var id = selectVal.substring(1);
console.log("id is: " + selectVal); 

html 应该是

<select name="zaal" id="zaal">
  <option value="~@ITEM.ID~" id="ZAALNAME">~ITEM.ID~, ~ITEM.NAME~</option>
</select>
$('#zaal').change(function(){
    alert($($(this)+':selected').attr('id'));
});

小提琴 http://jsfiddle.net/cBaZ7/1/

>val()将检索所选选项的值。这不是id

所以试试这个:

 $("#zaal option:selected").attr("id")