0

在我的网页上,我有一个表格,我想更改一行的背景,在此过程中,单击该行时选中与该行对应的单选按钮。我使用 jquery 尝试了以下操作:

<style>
  .active { background-color: #8fc3f7;}
</style>  
<script>
$(document).ready(function() 
  {
    $('#reqtablenew tr').click(function () 
       {
         $('#reqtablenew tr').removeClass("active");
         $(this).addClass("active");
       });
  });
<script>

任何关于我可能做错了什么或任何解决方法的想法都将非常受欢迎。我在页面中包含了以下脚本。src="http://code.jquery.com/jquery-1.9.1.js"> 和 src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"

这是我桌子的小提琴 http://jsfiddle.net/Gz668/5/

4

3 回答 3

6

你忘了添加jquery

在你的CSS中添加这个

tr.active td {
   background-color: #8fc3f7;
}

我已将您的演示更新为此

更新以检查radio试试这个,

$(this).find('[name="reqradio"]').prop('checked',true);

完整代码

$(document).ready(function () {
    $('#reqtablenew tr').click(function () {
        $('#reqtablenew tr').removeClass("active");
        $(this).addClass("active");
        $(this).find('[name="reqradio"]').prop('checked',true);
    });
});

演示

于 2013-11-14T06:29:25.703 回答
2

问题是 td 也有背景颜色

.newreqtable td {
   .....
   background-color:#ffffff;

因此,您需要强制执行您的活动课程,例如

tr.active td{background-color: #8fc3f7;}

看到这个:http: //jsfiddle.net/Gz668/9/

于 2013-11-14T06:31:52.217 回答
2

像这样的东西......:

$(this).find('input').prop('checked', true);

.. 将检查单击行的单选按钮。

[小提琴] ( http://jsfiddle.net/McNull/LwT9N/ )

于 2013-11-14T06:40:10.553 回答