jquery - 获取上一个选择的下拉项

标签 jquery button drop-down-menu

我有以下代码,其中有一个下拉列表(带有 class="addToList",后跟一个按钮(Class="addtoButton"):

当我单击按钮时,我想从上一个下拉列表中获取当前选定的值和文本。

$(".addToPortalButton").live('click', function (e) {

// grab the previous dropdown list value and text here.

});

使用 jquery 执行此操作的最简单方法是什么。

这是 html:

<select class="addToList" id="Teams" name="Teams">
     <option></option>
    <option value="49">Team 1</option>
    <option value="22">Team 2</option>
</select>
<input type='button' class="addToButton" value='Add to' />

<select class="addToList" id="Teams" name="Teams">
     <option></option>
    <option value="49">Team 1</option>
    <option value="22">Team 2</option>
</select>
<input type='button' class="addToButton" value='Add to' />

<select class="addToList" id="Teams" name="Teams">
     <option></option>
    <option value="49">Team 1</option>
    <option value="22">Team 2</option>
</select>
<input type='button' class="addToButton" value='Add to' />

最佳答案

您可以使用 .prev() .prevAll() 获取 <select>之前是这样的:

编辑:对于较新版本的 jQuery,其中 .live()已弃用,新的​​ .on() 语法是:

$(document).on('click', '.addToButton', function (e) {
  var sel = $(this).prevAll('.addToList:first'),
      val = sel.val(),
      text = sel.find(':selected').text();    
});

旧版本:

$(".addToButton").live('click', function (e) {
  var sel = $(this).prevAll(".addToList:first"),
      val = sel.val(),
      text = sel.find(':selected').text();    
});

关于jquery - 获取上一个选择的下拉项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4041927/

相关文章:

javascript - jquery 函数将 html 内容附加到 div 元素。但是 html 元素无法访问 head 部分中的 jquery 函数

javascript - JS 中的按钮和文本输入

c# - DataTrigger 绑定(bind)到属性

python - Tkinter 按钮不会配置

javascript - 为相扑下拉菜单设置选择限制

javascript - 我怎样才能使这个标记系统可排序?

javascript - 随机时间激活类的每个实例的函数

javascript - 各个方向连续、循环、可滚动的内容

reactjs - 使用 ReactJS/Reactstrap 进行 DropdownMenu 和 DropdownItem onClick

html - 下拉子菜单中每列只有三个元素