2012-08-27 176 views
0

簡單的問題, 我想動態地填充html表單複選框,但是當我嘗試通過在html中使用複選框的選中屬性來執行此操作時,它無法正常工作。該複選框仍然檢查我是否使用checked='0'/checked='1',checked='true'/checked='false'checked='checked'/checked='unchecked'動態填充複選框

雖然我解決它通過在PHP如下申請額外的檢查......

while($contact = $db->fetchByAssoc($contacts)) 
{ 
$include_checked =($contact['include'])? " checked={$contact['include']} ": ""; 
$opted_checked = ($contact['opted_out'])? " checked={$contact['include']} ": ""; 

$html.="<tr><td>{$contact['name']} </td> 
      <td><input type='checkbox' {$include_checked}/> </td>  
      <td><input type='checkbox' {$opted_checked}/> </td> 

有沒有什麼更好的辦法做到這一點???

回答

0

使用yes預先選擇它。刪除默認情況下它

<input type="checkbox" checked="yes"/> 

或`檢查=取消對它的 「檢查」

<input type="checkbox" checked="checked"/> 

或者,但反對和不鼓勵使用:

<input type="checkbox" checked /> 

未檢查?根本不要使用任何選項。只要刪除它。通過後端無法選擇它。當然這根本不需要。

0

checked屬性的值無關緊要。當你想要取消選中時,不要設置checked屬性。

<input type="checkbox" /> 
+0

是的,我通過php代碼做了檢查,但爲什麼HTML只有一個受限制的選項用於檢查屬性?有沒有其他的選擇?這是個問題。 – mansoor

+0

@mansoor我不知道對'checked'屬性值有任何限制(可能在XHTML中?)。如果有任何值的'checked'屬性,它將被檢查,如果沒有'checked'屬性,它將被取消選中。 – Furgas