Javascript 如何在jQuery中自动选择单选按钮

Javascript 如何在jQuery中自动选择单选按钮,javascript,jquery,html,Javascript,Jquery,Html,我有一个表单,其中包含几行单选按钮。当在第一行(仅第一行)中选择一个按钮时,我需要在上一个选择的上方(右侧)自动选择后续行,直到到达表的末尾 单击第一行中的“MD”后,结果应如下所示: 如果有意义的话,解决方案应该是基于相对位置的。唯一ID一致的元素是表(“skuTable”) 到目前为止,我所做的是(控制台日志记录到调试): 这样做的目的是选择下一行的第一个单选按钮。我需要一些帮助来确定如何选择相对于第一个单选按钮位置的下一个单选按钮。我就是这样做的: var rows = $("#sku

我有一个表单,其中包含几行单选按钮。当在第一行(仅第一行)中选择一个按钮时,我需要在上一个选择的上方(右侧)自动选择后续行,直到到达表的末尾

单击第一行中的“MD”后,结果应如下所示:

如果有意义的话,解决方案应该是基于相对位置的。唯一ID一致的元素是表(“skuTable”)

到目前为止,我所做的是(控制台日志记录到调试):

这样做的目的是选择下一行的第一个单选按钮。我需要一些帮助来确定如何选择相对于第一个单选按钮位置的下一个单选按钮。

我就是这样做的:

var rows = $("#skuTable tr");

rows.eq(0).find("input:radio").each(function(i) {
    $(this).on("click", function() {
        for(var m = 0, n = rows.length;m < n;m++) {
            rows.eq(m).find("input:radio").eq(i + m).attr("checked", true);
        }
    });                              
});
var行=$(“#skuTable tr”);
行。等式(0)。查找(“输入:无线电”)。每个(函数(i){
$(此)。在(“单击”,函数()上){
for(var m=0,n=rows.length;m
演示:

还有一个解决方案:

  $("#skuTable").find("input:radio").on("click", function(){
      loop = 0;
      $("input").prop("checked",false);
      index = $(this).parent().index("td");
      $.each($("table tbody tr"), function() {
          $("table tbody tr:eq("+loop+")").find("td:eq("+index+")").find("input:radio").prop('checked', true);
          index++;
          loop++;
      });
  });

如果一个人选择了第一行的最后一个元素,你想做什么?在这个用例中根本不应该发生这种情况;但如果是这样,它就不需要做任何事情。如果我选择4XL,然后在第一行选择M/S,结果是不一致的。那么你是说取消选中之前选中的单选按钮?
  $("#skuTable").find("input:radio").on("click", function(){
      loop = 0;
      $("input").prop("checked",false);
      index = $(this).parent().index("td");
      $.each($("table tbody tr"), function() {
          $("table tbody tr:eq("+loop+")").find("td:eq("+index+")").find("input:radio").prop('checked', true);
          index++;
          loop++;
      });
  });