重构JQuery设置复选框属性

时间:2012-12-04 15:56:14

标签: jquery checkbox refactoring

这段代码可以用单行格式编写吗?

if ($('#sIsTopNav').text().trim() === 'True') {
    $('#chkIsTopNav').attr('checked','checked');
}else {
    $('#chkIsTopNav').removeAttr('checked');
}

TIA ..

2 个答案:

答案 0 :(得分:4)

尝试使用conditional (ternary) operator

$('#sIsTopNav').text().trim() === 'True' ? $('#chkIsTopNav').attr('checked','checked') :  $('#chkIsTopNav').removeAttr('checked');

答案 1 :(得分:1)

你可以这样做:

$('#chkIsTopNav').prop('checked', $('#sIsTopNav').text().trim() === 'True')

注意

  • 删除checked属性与将其设置为false具有相同的效果。
  • 使用.prop()是设置checkeddisabled等属性的当前推荐方式。