Javascript 获取特定列中的值(数字)

Javascript 获取特定列中的值(数字),javascript,jquery,html,Javascript,Jquery,Html,我试图让jquery对特定列中的所有数字进行合计,并以html格式输出。这是密码 var vals = new Array(), i = 0, price = 0; $("#TextBookTB tr:gt(0) td:nth-child(5)").each(function(){ if($.inArray(i, vals) < 0) { if($.isNumeric(vals[i])) { price = price + vals[i];

我试图让jquery对特定列中的所有数字进行合计,并以html格式输出。这是密码

var vals = new Array(), i = 0, price = 0;
$("#TextBookTB tr:gt(0) td:nth-child(5)").each(function(){
  if($.inArray(i, vals) < 0)
  {
    if($.isNumeric(vals[i]))
    {
      price = price + vals[i];
      console.log(vals[i]);
      i++;
    }
  }
});
$("#ES3P").text(price);
var vals=new Array(),i=0,price=0;
$(“#TextBookTB tr:gt(0)td:nth child(5)”)。每个(函数(){
如果($.inArray(i,VAL)<0)
{
如果($.isNumeric(VAL[i]))
{
价格=价格+VAL[i];
控制台日志(VAL[i]);
i++;
}
}
});
元("ES3P).文字(价格);;
干杯

编辑:根据要求编辑表格。该表由PHP响应。不太清楚为什么它不能像我希望的那样正常工作

echo '<div class="container-fluid MainContent">
  <div id="TBForm" class="container-fluid MainContentF">
    <table id="TextBookTB" class="table table-dark table-bordered">
        <thead>
          <tr>
            <th scope="col">A</th>
            <th scope="col">B</th>
            <th scope="col">C</th>
            <th scope="col">D</th>
            <th scope="col">E</th>
            <th scope="col">F</th>
            <th scope="col">G</th>
            <th scope="col">H</th>
          </tr>
        </thead>
        <tbody>
'; 
LoadBooks();
echo '  </tbody>

      </table>
      <br>
      <div class="row">
        <form id="ES3S" action="enroll.php" method="post">
          <input type="hidden" name="Enrollment" value="Textbooks">
          <button type="submit" class="btn btn-primary">Next Step</button>
        </form>
      </div>
    </div>
    </div>
';
echo'
A.
B
C
D
E
F
G
H
'; 
负荷书();
回声'

下一步 ';
我想你想要的是

var price = 0;
$("#TextBookTB tr:gt(0) td:nth-child(5)").each(function(td){
    var content = $(td).text();
    if($.isNumeric(content)) {
      price = price + Number(content);
    }
});
$("#ES3P").text(price);

将代码放入document.ready,如下所示:

$(document).ready(function() {
 var price = 0;
 $("#TextBookTB tr:gt(0) td:nth-child(5)").each(function(td){
   var content = $(td).text();
   if($.isNumeric(content)) {
     price = price + Number(content);
    }
   });
   $("#ES3P").text(price);
})
函数fCalcPrice()
{
var价格=0;
$(“#TextBookTB tr:gt(0)”)。每个(函数(){
var radio=$(this).find(“输入[type='radio']”);
if(radio.is(“:checked”))
{
var content=$(this.children().eq(4.text();
控制台日志(内容);
如果($.isNumeric(内容)){
价格=价格+数量(内容);
}
}
});
元("ES3P).文字(价格);;
}
fCalcPrice()

A.
B
C
D
E
F
G
H
A.
B
C
D
1.
F
G
H
A.
B
C
D
2.
F
G
H
A.
B
C
D
3.
F
G
H

var vals=new Array()
。。。VAL是一个空数组。。。而且你从来没有给它添加任何东西。。。您认为
VAL
的内容应该是什么?表中的值。。据推测我还以为这已经是个骗局了。。显然不是…
.each(function()){
…在所有选定的td中循环…但是在循环中你什么也不做?你认为数组
VAL
如何知道你想要它是什么?我认为我的代码是:如果值大于0,如果值是数值,如果是数值,它应该得到f行特定值的值从专栏中…也许你可以帮我?是的,就是这样,但它似乎没有给我任何值…嗯,这起作用了..谢谢詹姆斯..一个问题tho..我应该如何添加一个验证,如果按钮在同一行…这是唯一的时间计算?抱歉..我真的不擅长javascript。谢谢你tho!@Deatching你说什么“唯一计算的时间”?如中所示,只有当该行有按钮时,它才会将该行添加到总数中?如果该单选按钮勾选了是:)等等,你说的是按钮..你到底想要什么?每行有一个单选按钮吗?你能选择多个单选按钮,只想添加勾选了单选按钮的行吗?是的!就是这样!抱歉..)