javascript - Jquery按钮点击获取所选选项值

标签 javascript jquery

我在下面有这个代码。尝试获取所选选项的值,但第一个给出错误,test.parent 不是函数,第二个变量得到一个空字符串。我怎样才能做到这一点?

<select unselectable="on" name="gender">
  <option value="Male" unselectable="on">Male</option>
  <option value="Female" unselectable="on">Female</option>
</select>
<input value="Submit" onclick="addItem(this)" type="button">

<script>
    function addItem(test){
        var selected_val1 = test.parent('#gender option:selected').val();
        var selected_val2 = $("#gender option:selected").text();
    }
</script>

最佳答案

您将 this 传递给 addItem() 函数,并将其缓存为 test,这不是一个 jQuery 对象,而是原生 DOM 节点。

然后你正在执行 test.parent('#gender option:selected').val();,但是 test 没有父方法,也没有有一个父选择元素。

选择的是前一个元素,因此您应该使用prev

$(test).prev('[name="gender"]').find('option:selected').val();

或者只是

$(test).prev('select').val();

看起来更容易

关于javascript - Jquery按钮点击获取所选选项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26894395/

相关文章:

javascript 等待 DOM 元素实际绘制并完成

javascript - jquery 将值发送到 PHP 网页

jquery - 生成 CSS 切换到下拉菜单?

javascript - 如何使用 JavaScript 防止用户复制其 IP?

javascript - Protractor 无需单击链接即可下载图像文件

javascript - 另一个ajax中的Ajax请求

javascript - jQuery 获取所选类的总标记

javascript - FIREFOX:插件还是扩展?

jquery - 如何使用 Jquery 替换 span 元素中的文本?

javascript - 在 collapsible-set 中打开了哪个动态添加的 collapsible?移动版