2017-08-13 74 views
0

我有一個代碼,它從數據庫中檢索數據並將其顯示到表中。它工作正常,但我想實現一個複選框作爲標題的一部分,這將允許我選擇/取消選擇所有行。頭只是從數據庫評論拉,所以我不知道如何實現checkbox-select/deselect all頭。執行復選框標題

這裏是我的代碼,

<div> 
    <form action="test4.php" method="post"><?php 

if(is_array($result)){ 
    echo ' 
    <fieldset> 
     <legend>Assign</legend> 
     <div>Changes will affect selected rows only.</div> 
     <table width=auto cellpadding=1px cellspacing=0px border=1 align=center> 

      <thead> 
      <tr>';  

    // column comment from DB as column header 
    foreach($result[0] as $key => $val){ 
     echo '<th>'.$colcomments[$key].'</th>'; 
     } 
    echo ' 
      </tr> 
      </thead> 
      <tbody>'; 
    foreach($result as $row => $info){ 
    echo ' 
      <tr>'; 
    foreach($info as $key => $val){ 
    if($key=='id'){ 
    echo ' 
      <td title="'.$colcomments[$key].'">'.$val.'. 
      <input type="checkbox" name="'.$key.'['.$info['id'].']" 
      value="'.$val.'" id="rowid_'.$val.'" /> 
      <label for="rowid_'.$val.'"></label></td>'; 
     } 
    else { 
    echo ' 
      <td title="'.$colcomments[$key].'"> 
      <input type="text" name="'.$key.'['.$info['id'].']" 
      value="'.$val.'" /> 
      </td>'; 
     } 
     } 
    echo ' 
      </tr>'; 
     } 
    echo ' 
      </tbody> 
      </table> 
    </fieldset>'; 
    } 
?> 
    <fieldset> 
     <legend>Select Date</legend> 
     <div>Select Date from and Date to</div> 
     <input type="date" name="from" id="from" value="<?=$date['from']; ?>" /> 
     <input type="date" name="to" id="to" value="<?=$date['to']; ?>" /> 
     <div><input type="submit" value="Submit" /></div> 
    </fieldset> 
    </form> 
    </div> 

這是我的複選框腳本,我不知道我在哪裏可以插入一個代碼來創建一個複選框頭。這與之前發佈的不同,因爲我的問題是如何創建複選框標題,如果我只使用我的數據庫中的commments部分將它作爲標題。

<script> 
jQuery(document).ready(function() { 
    jQuery("input[name=checkall]").click(function() { 
    jQuery('input[name=checkall]').prop('checked', this.checked); 
    jQuery('input[name=checkbox]').prop('checked', this.checked); 
    }); 


    // if all checkbox are selected, check the selectall checkbox 
    // and viceversa 
    jQuery("input[name=checkbox]").click(function(){ 

    if(jQuery("input[name=checkbox]").length == jQuery("input[name=checkbox]:checked").length) { 
     jQuery("input[name=checkall]").prop("checked", true); 
    } else { 
     jQuery("input[name=checkall]").prop("checked", false); 
    } 
    }); 
}); 
</script> 
+1

在你的表格的主體中,你檢查'key == id',如果是的話,你把一個複選框。你不能在頭上做同樣的事嗎? – sal

回答

0

我將此標記爲已解決。易於修復只是將其類型設置爲hidden。因爲我需要更新反正所有行

<input type="checkbox" name="'.$key.'['.$info['id'].']" 

更改爲

<input type="hidden" name="'.$key.'['.$info['id'].']" 

複選框只是一個多餘的。