javascript - 如何获取选择元素的值以及如何对变化采取行动?

标签 javascript jquery select onchange

change() event in jQuery 有问题:

$("select[name=cmm]").change(function(){
    total();
});

由于某种原因,上面的代码没有调用“total”函数。 html代码为:

  <select name="cmm">
      <option value="none">none</option>
      <option value="one">the first</option>
      <option value="two">the second</option>
  </select>

我是否以错误的方式引用了该元素?或者以错误的方式调用函数?

<小时/>

更新: 这里的警报功能没有显示,所以我猜测更改事件永远不会被调用..

$(document).ready(function() {
$("select[name=cms]").change(function(){
    total();
    alert($("select[name=cms]").length);
});
});

(是的,我一直在使用 doc-ready)

最佳答案

更新问题:
确保您的代码在 document.ready 中运行处理程序所以 <select>元素已在 DOM 中并准备就绪,如下所示:

$(function() {
  $("select[name=cmm]").change(function(){ total(); });
});
<小时/>

对于上一个问题:
你错过了第二个 m在您的选择器上,它应该是:

$("select[name=cmm]").change(function(){ total(); });

或更短:

$("select[name=cmm]").change(total);

对于第二个,只需使用 .val() 直接上<select>获取值,如下所示:

var iets = $("select[name=cmm]").val();
//or when calling .change(total) like above, inside total you can use:
var iets = $(this).val();

当您指定option时它获取第一个 <option> 的值,无论选择什么。

关于javascript - 如何获取选择元素的值以及如何对变化采取行动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4009356/

相关文章:

linq - 使用 LINQ 从表中仅获取一个值

javascript - 如何在 JavaScript 中创建多维数组?

javascript - 获取所有已声明模块导入的列表 (SystemJS)

css - html 中的样式选择和选项 (IE 6)

jquery - 点击时匹配 Div 位置

javascript - 如何获取可选择的 jquery 元素的 innerHTML?

MySQL 根据 ENUM 值进行选择

javascript - 将 javascript 变量设置为等于 Storyline 变量?

javascript - 在 JavaScript 中显示 div

javascript - 单击 div 时更改图像