2011-09-22 51 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

相关问题