javascript - jQuery 内部错误 : Uncaught TypeError: Cannot read property 'toLowerCase' of undefined

标签 javascript jquery

我有这个代码:

$(document).ready(function() {
    var totalHours = 0;
    $('select').each(function(sel)
    {                
      totalHours += parseFloat($(sel).val());
    });
    alert(totalHours);
});

所以我希望看到 <select> 的值的总和页面上的元素,但我在 jQuery 中收到此错误(它发生在 each 循环内的行上)。为什么我会收到此错误,如何修复它?

最佳答案

$().each https://api.jquery.com/each/

Type: Function( Integer index, Element element )

A function to execute for each matched element.

函数签名是(index, element),但您将其用作(element) - 更改为

$('select').each(function(i, sel)

更新的代码:

var totalHours = 0;
$('select').each(function(i, sel) {
  totalHours += parseFloat($(sel).val());
});
console.log(totalHours);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select>
  <option value="1">1</option>
</select>

关于javascript - jQuery 内部错误 : Uncaught TypeError: Cannot read property 'toLowerCase' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60191256/

相关文章:

javascript - 查找使用 vue-cli 生成的 Webpack-simple 和 Vuejs 图像的问题

javascript - 如何获取 HTML 中的文本和 href 值,然后将它们设置为 JQuery UI 自动完成中的值和标签

如果 url 具有哈希标记并且用户刚刚使用浏览器向前或向后导航,则 JavaScript 函数?

JavaScript setInterval 和clearInterval 不起作用

jquery - 调试并绕过禁用网页上的文本选择

jquery - 在对话框中调试 jQuery 代码

javascript - 当元素进入视口(viewport)时触发 anime.js 动画

jquery - 如何在 Dom Ready 上加载这些 facebook 插件

javascript - 在 Javascript 中实现 isInstance

javascript - 将对象连接到数组中