2011-07-11 189 views
0

我试图让你点击表中的一行,然后同一行上的单选按钮将被选中。选择一个单选按钮

有没有人可以这样做的一些建议?

<form name="form1" method="post" action=""> 
<table id="simplehighlight" class="REW_table" style="width: 350px; margin-left: auto; margin-right: auto;" > 
    <thead></thead> 
    <tr><td><input type="radio" name="RadioGroup1" value="radio" id="RadioGroup1_0"></tr> 
    <tr><td><input type="radio" name="RadioGroup1" value="radio" id="RadioGroup1_0"></tr> 
    <tr><td><input type="radio" name="RadioGroup1" value="radio" id="RadioGroup1_0"></tr> 
    <tr><td><input type="radio" name="RadioGroup1" value="radio" id="RadioGroup1_0"></tr> 
    <tr><td><input type="radio" name="RadioGroup1" value="radio" id="RadioGroup1_0"></tr> 
</table> 
</form> 

的Javascript:

$(document).ready(function(){ 
    $('#simplehighlight tr').hover(function(){ 
     $(this).children().addClass('datahighlight'); // Mark lightgray 

     $(this).click(function(){ 
      $('#simplehighlight tr').children().removeClass('datahighlight_select'); // Remove all old blue mark 
      $(this).children().addClass('datahighlight_select'); // Mark blue 
     }); 

    },function(){ 
     $(this).children().removeClass('datahighlight'); // Remove lightgray 
    }); 
}); 

回答

3

尝试:

$("#simplehighlight tr").click(function() { 
    $(this).find("input:radio").prop("checked", true); 
}); 

使用.prop().find(),并结合使用.click()

同时请注意,发布你的HTML是无效的点击事件:

  • input标签应该是自闭和,
  • 你已经忘记了</td>标签。
  • 此外,您在一个页面上有多个元素,具有相同的id属性,这是不允许的。

下面是一个例子:http://jsfiddle.net/yJ3RN/(也纠正了HTML问题)

+0

非常感谢,现在它的伟大工程;) – Eirik

+0

@Eirik:没问题!请确保接受答案,如果它帮助':)' –