Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果选中复选框/单选框,则获取列的值_Javascript_Jquery - Fatal编程技术网

Javascript 如果选中复选框/单选框,则获取列的值

Javascript 如果选中复选框/单选框,则获取列的值,javascript,jquery,Javascript,Jquery,我想知道如果选中某一行上的复选框或单选按钮,如何获取某一列中的值。我已经开始并想出了这个: <script> var Step = <?php echo $_SESSION['Step'] ?>; if(Step == 3 || Step == 4 ) { setInterval(ScriptUpdate, 1000); } function ScriptUpdate() { if(Step ==

我想知道如果选中某一行上的复选框或单选按钮,如何获取某一列中的值。我已经开始并想出了这个:

    <script>
      var Step = <?php echo $_SESSION['Step'] ?>;
      if(Step == 3 || Step == 4 ) { setInterval(ScriptUpdate, 1000); }

      function ScriptUpdate()
      {
        if(Step == 3)
        {
          var checked = $("input:checkbox:checked").length;
          var radioButtonSelectedCount = $(document.querySelectorAll('input[type=radio]:checked')).parent().filter(function() {return $(this).text().trim()=="Yes"}).length;
          var Counter = checked + radioButtonSelectedCount;
          $('#ES3I').text(Counter + ' Items');

          var price = 0;
          $("#TextBookTB tr:gt(0) td:nth-child(6)").each(function(td){
              var content = $(this).text();
              if($.isNumeric(content)) {
                price = price + Number(content);
                  console.log(price);
              }
          });
          $("#ES3P").text(price);
        }
      }
      </script>

var阶跃=;
如果(步骤==3 | |步骤==4){setInterval(ScriptUpdate,1000);}
函数ScriptUpdate()
{
如果(步骤==3)
{
var checked=$(“输入:复选框:checked”)。长度;
var radioButtonSelectedCount=$(document.querySelectorAll('input[type=radio]:checked')).parent().filter(function(){return$(this.text().trim()==“Yes”}).length;
var计数器=选中+radioButtonSelectedCount;
$('ES3I')。文本(计数器+'Items');
var价格=0;
$(“#TextBookTB tr:gt(0)td:nth child(6)”)。每个(函数(td){
var content=$(this.text();
如果($.isNumeric(内容)){
价格=价格+数量(内容);
控制台日志(价格);
}
});
元("ES3P).文字(价格);;
}
}
目标是:当用户选中复选框或在单选按钮中回答“是”时,这是唯一一次计算值。抱歉,我在jquery/javascript方面真的很差

编辑:根据请求编辑html代码。计时器的当前输出获取该特定列所有行中的所有值

<label class="radio-inline">
<input form="ES3S" type="radio" name="Textbook'.$i.'" value="'.$Result[$i]['ID'].'"> Yes
</label>
<label class="radio-inline">
<input form="ES3S" type="radio" name="Textbook'.$i.'" value="-1">No
</label>


    <span class="d-inline-block" data-toggle="popover" title="Error" data-content="This book is required by the school. If you want to cancel this out, proceed to the principals office with the book for review." data-trigger="hover">
    <input form="ES3S" required checked onclick="return false;" type="checkbox" value="'.$Result[$i]['ID'].'" name="Textbook'.$i.'">
    </span>

对
不

如果您正在使用表,请尝试此操作

 var count = 0;
 $('#TABLEID').find('tr').each(function () {
                    var tableRow = $(this);
                    if (tableRow.find('input[type="checkbox"]').is(':checked')) {
                        count += 1;

                    }
                });
当用户选中复选框或在单选按钮中回答“是”时,这是唯一一次计算值

$(函数(){
变量选择器='input[name^=“教科书”];
$(选择器)。在('单击',函数()上){
var checked=$(选择器+':checked').map(函数(){
返回{
“type”:this.type,
“value”:this.value
};
}).get().filter(函数(o){
返回'-1'!==o.value;//如果值=-1(否),则跳过
});
console.log(“已检查的输入”,已检查);
});
});

对
不
对
不

目前的结果是什么?出了什么问题?请发布您的HTML代码。已添加@Script47当前输出基本上是基于特定列的所有行输出数据这会计算选中了多少框。。。没有真正显示检查的对象及其值。。嗯…这很有效,但不是我想要的。。因为我的单选按钮和复选框在一列中,而我需要的值在另一列中。。当选中第7列的单选按钮时,我需要能够获取(例如)第6列的值。。谢谢(:@deatching,你用脚本试过这个代码了吗?