我的要求是,如果文本框值大于0,则取消选中该复选框.但是在两次关键操作后取消选中它.我无法识别错误......请有人帮助我.
$('#'+QID+' TABLE TBODY TR').find("input[type='text']").live('keydown',function()
{
if($(this).val().length > 0)
{
$('#'+ExQID+' TABLE TBODY TR').siblings('TR').find(':checkbox').prop('checked',false)
}
});
Run Code Online (Sandbox Code Playgroud)
keydown 在DOM中的值更改之前触发.
所以:
当事件第一次触发时,你将第一个字符插入到文本框中但是DOM还不知道这个,所以$(this).val().length仍然是0;
事件第二次触发时,您将第二个字符插入文本框,并且$(this).val().length从上次开始是1.
而是使用在keyup更新文本框值后触发的事件.
| 归档时间: |
|
| 查看次数: |
1580 次 |
| 最近记录: |