2012-12-04 85 views
0

這個代碼可以寫成單行格式嗎?重構JQuery設置複選框屬性

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

TIA ..

+2

你爲什麼要這麼做?不要修補沒有損壞的東西,而且一件襯衫也不會一直很好地閱讀。 – CR41G14

回答

1

你可以這樣做:

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

注意

  • 刪除checked屬性與將其設置爲false的效果相同。
  • 使用.prop()是當前推薦的方式設置像checked性質,disabled
4

嘗試使用conditional (ternary) operator

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