我在表格中有简单的复选框。这是我在代码中看到的复选框标记:
<input type="checkbox" id="iFact123" onchange="submit_status_change(123,$(this).prop('checked'));" >
现在例如在 Firefox 中,这工作正常。在 Chrome 中,会发生以下情况:
- 单击复选框时,复选框似乎不会更改为选中/未选中。它保持不变。至少在视觉上
- 运行正常,
submit_status_change()
如果我重新加载页面,该元素将被加载为选中状态(现在是来自数据库的信息)。由于此函数从 获取信息$(this).attr('checked'))
,因此必须至少在发送参数时检查元素 - 它只是没有出现。
现在有人对这样的问题有任何想法或经验吗?
如果您认为它与提交功能有关,这里是:
function submit_status_change(id, val){
//$.post('something.php',{'change_status':id, 'status':val}, function(){});
}
更新:attr
更改为prop
Chrome 现在更改了复选框,至少在视觉上是这样。事件onchange
似乎没有发生。
火狐:
TypeError: $(...).prop is not a function
[Break On This Error]
submit_tech_status(123,$(this).prop('checked'));
UPDATE2:我切断了一些代码。现在提交功能非常清晰。Firefox 出现错误prop
,chrome 打印没有错误,但不运行提交功能。这与以前不同,chrome 中的复选框似乎没有被选中或未选中,但功能正常。