javascript - 获取选中选项的id

标签 javascript jquery html

我有 2 个对话框表单 Add regionAdd country .有<select>每个模态形式的选项。可以有在每个模式形式中重复的选择选项,所以我将它们放在一个类中并通过 display:none 对其进行样式设置。 ,因此 ID 不会重复。

当我需要获取所选项目的 ID 时,它会给我一个未定义的值。我正在使用 $(".region_options").children(":selected").attr("id");获取所选选项的 ID。

这是我的代码。和 jsFiddle

<!doctype html>
<html lang="en">
<head>

  <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css">

  <script>
  $(function() {

    $( "#dialog-form" ).dialog({
      autoOpen: false,
      height: 300,
      width: 350,
      modal: true,
      buttons: {
        "Create an account": function() {
          var region_id =  $(".region_options").children(":selected").attr("id");
          alert(region_id)
        },
        Cancel: function() {
          $( this ).dialog( "close" );
        }
      },

    });

    $( "#create-user" ).button().click(function() {
        $( "#dialog-form" ).dialog( "open" );
      });
  });


  </script>
</head>
<body>

<div id="dialog-form" title="Create new user">
    <select class="region_options">
        <option>Select Region</option>
        <option id="1">Asia / Pacific</option>
        <option id="2">North America</option>
        <option id="3">sdgvgwqrg</option>
    </select>
</div>

<div id="dialog-form1" title="Create new user" style="display:none">
   <select class="region_options">
        <option>Select Region</option>
        <option id="1">Asia / Pacific</option>
        <option id="2">North America</option>
        <option id="3">sdgvgwqrg</option>
    </select>
</div>


<button id="create-user">Create new user</button>


</body>
</html>

最佳答案

<option>元素由 value 标识属性,而不是 id .

<select class="region_options">
    <option>Select Region</option>
    <option value="1">Asia / Pacific</option>
    <option value="2">North America</option>
    <option value="3">sdgvgwqrg</option>
</select>

使用 val()方法读取或写入所选选项的值。

var region = $("#dialog-form .region_options").val();
$("#dialog-form1 .region_options").val(region);

关于javascript - 获取选中选项的id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20698499/

相关文章:

用于检查字段是否为空的 Javascript 函数

javascript - 添加 jQuery 单击处理程序

jquery - 如何在用户单击链接时将页面重置为初始比例?

jquery - 基于数字/百分比的动态表格行背景颜色 - 色标

html - R 开发工具 : create both html and pdf of vignettes

javascript - 使用没有子元素的javascript获取HTML元素DOM作为字符串

javascript - 如何使用 jQuery 从元素的文本中删除特定字符串?

JQUERY精选

javascript - Angular $Scope 解构模式错误

基于用户输入的 PHP 和 MySQL 查询不起作用