如何检查复选框是否已选中?

Phi*_*enn 0 javascript jquery

我认为这会奏效:

if ($(this).attr('checked')) {}
Run Code Online (Sandbox Code Playgroud)

但我必须这样写:

if ($(this).is(':checked')) {}
Run Code Online (Sandbox Code Playgroud)

问:为什么?

Tej*_*ejs 7

当您请求检查attr时,您没有获得布尔值:

// this would be correct
if($(this).attr('checked') == 'checked')

// jQuery 1.6+
if($(this).prop('checked'))
Run Code Online (Sandbox Code Playgroud)