添加文档加载时无法检测复选框更改
Can't detect checkbox change when adding on document load
我有点卡住了。我有一个javascript函数,在页面加载时,生成一个表单:
所有的复选框都有类' classes -select'。当这些复选框状态发生变化时,我试图运行另一个函数(我现在已经放置了console.log in),但它没有检测到任何变化。
$(function() {
FormGenerate();
$('.cls-select').change(console.log('Something changed...'));
// ...
});
当页面第一次打开时,出现日志消息。但是,无论选中/未选中什么,都不会出现额外的日志条目。
谁能给我解释一下为什么会这样?我猜这是因为当浏览器加载。js文件时,页面上没有存在的带有cls-select的复选框,所以没有"那里"可以触发。有没有办法绕过这个而不必重新开始?如有任何帮助/建议,不胜感激。
您的逻辑正在分配console.log('Something changed...')
执行的结果作为事件处理程序,这不是您期望做的。
修改你的代码
$('.cls-select').change(function(){
console.log('Something changed...');
});
我认为这是因为当你试图为复选框设置'onchange'事件时,它们还没有出现。所以你应该像这样使用jQuery 'on':
$( 'body' ).on( 'change', '.cls-select', function() {
console.log('changes!');
});
你的代码有问题,你应该这样做
$(function() {
FormGenerate();
$('.cls-select').change(function(){
console.log('Something changed...');
});
});
相关文章:
- 如何使用javascript检测数据表分页的其他页面中的复选框
- 如何在呈现页面后使用 Java 脚本检测 dom 元素值的值是否有任何变化(例如,任何输入或复选框值更改)
- jQuery复选框未选中检测问题
- 检测Bootstrap Switch Jquery中的类更改(将工作复选框JS转换为按钮JS)
- 类事件处理程序未检测是否选中复选框
- Javascript:检测复选框不适用于只有 1 个复选框的表单.使用 2 个或更多
- 动态 javascript,用于检测复选框是否被选中并禁用相应的输入字段
- JQuery if 语句未正确检测跨度复选框
- 检测复选框是否在 Angular.js ng-change 事件中处于选中状态
- 用于检查和取消选中复选框列表控件检测的 Javascript
- 如何检测和获取 asp.net 中的复选框/选择框(html 标记)值
- 茉莉花在检测到复选框时遇到问题
- 复选框选中全部无法检测数据
- 尝试检测网格视图的哪一行处于编辑模式,然后在选中复选框字段时调整文本框
- 在复选框状态ExtJS 4.1中手动检测与编程更改
- 如何检测复选框状态的更改
- 验证复选框-不检测它'选中
- 如何使用jquery检测复选框是否被点击
- 无法成功检测复选框上的单击或更改事件
- 添加文档加载时无法检测复选框更改