2011-09-22 49 views
0

我想要onload<span><checkbox>類是空白:刪除類,如果複選框被選中

<span id="checkboxx_<?php echo $nrs['id']; ?>" class="highlight" > 
    <input type="checkbox" class="checkboxx" id="checkboxx_<?php echo $nrs['id']; ?>" style="padding: 0px; margin: 2px;" <?php echo $value == 1 ? 'checked="checked"' : ''?>>      
</span> 

我已經嘗試了本

<?php 
if($value==1) 
{ 
?> 
    <script> 
    if (this.checked) { 
     document.getElementById("checkboxx_<?php echo $nrs['id']; ?>").className = ""; 
    } 
    </script> 
<?php 
} else { 
?> 
    <script>$j("#"+pos).addClass("highlight");</script> 
<?php 
} 

但這不起作用。

+0

檢查這個環節,有解決辦法:http://stackoverflow.com/questions/195951/change-an-elements-css-class-with-javascript –

+0

沒有違法,但你是怎麼想到這個代碼e正常工作?你讀過關於PHP和JavaScript的任何教程嗎?看起來你只是複製和粘貼在一起的東西...我建議你花一些時間,學習有關JavaScript(也許PHP)的基礎知識。 [MDN JavaScript指南](https://developer.mozilla.org/en/JavaScript/Guide)是一個好的開始。 –

回答

2
document.getElementById("MyElement").className = 
document.getElementById("MyElement").className.replace(/(?:^|\s)MyClass(?!\S)/ , '') 
0

其實你在你的代碼checkboxx_<?php echo $nrs['id']; ?>重複的ID的跨度和複選框,也是這個代碼是越野車,並不會工作

<script>if (this.checked) { 
      document.getElementById("checkboxx_<?php echo $nrs['id']; ?>").className = ""; 
      } 
     </script> 

我認爲這會是使用水木清華這樣更好的方式:

<span class="<?php echo ($value !== 1 ? 'highlight' : '') ?>" > 
    <input type="checkbox" class="checkboxx" style="padding: 0px; margin: 2px;" <?php echo $value == 1 ? 'checked="checked"' : ''?>>      
</span> 
+0

範圍和複選框ID是故意製作的。和上面顯示的javascrpt代碼類似,都顯示嘗試了這兩種方法 – user930026

相關問題