带有内置计算器的Html/Javascript表格

带有内置计算器的Html/Javascript表格,javascript,html,html-table,calculator,Javascript,Html,Html Table,Calculator,我得到了这个表,它带有一个内置的计算器功能,可以从表的不同部分进行选择,并在最后将所有内容相加。但我的问题是,如果我击中其中一个方格,方格内有字母而不是数字,计算器就会崩溃,我该如何修复它 如何使包含信息(汽车名称)的第一个like不可查找,并且仅前5个方块。 表格代码: <table> <tr> <th bgcolor="b8cce4">Modell</td> <th>Trend<

我得到了这个表,它带有一个内置的计算器功能,可以从
表的不同部分进行选择,并在最后将所有内容相加。但我的问题是,如果我击中其中一个方格,方格内有字母而不是数字,计算器就会崩溃,我该如何修复它

如何使包含信息(汽车名称)的第一个like不可查找,并且仅前5个方块。 表格代码:

 <table>
      <tr>
        <th bgcolor="b8cce4">Modell</td>
          <th>Trend</td>
            <th>Titanum</td>
              <th>Familiepakke</td>
                <th>Førerassistentpakke</td>
                  <th>Stilpakke</td>
                    <th>Sluttpris</td>
      </tr>
      <tr>
        <td bgcolor="b8cce4"><b>Kuga</b></td>
        <td>401000</td>
        <td>420000</td>
        <td>1000</td>
        <td>10200</td>
        <td>9200</td>
        <td>kr</td>
      </tr>
      <tr>
        <td bgcolor="b8cce4"><b>C-max</b></td>
        <td>320000</td>
        <td>335000</td>
        <td>1000</td>
        <td>9400</td>
        <td>3600</td>
        <td>kr</td>
      </tr>
      <tr>
        <td bgcolor="b8cce4"><b>Focus</b></td>
        <td>255000</td>
        <td>325000</td>
        <td>900</td>
        <td>12500</td>
        <td>9000</td>
        <td>kr</td>
      </tr>
      <tr>
        <td bgcolor="b8cce4"><b>Mondeo</b></td>
        <td>281000</td>
        <td>361000</td>
        <td>1100</td>
        <td>9900</td>
        <td>7200</td>
        <td>kr</td>
      </tr>

在循环中,测试它是否为数字字段,然后才对其进行处理:

if ((selected[k].innerText) && (/^\d+$/.test(selected[k].innerText))) {
    total += parseInt(selected[k].innerText);
}

感谢您修复了关于该框中文本的问题,但是如果我单击文本周围的某个位置,它似乎会给我NaN。如何使整个框不可定位?您可以使用上面
if
子句中的函数,或者在数字单元格上设置一个类
clickable
,并使用jQuery的
hasClass()
()确保仅在具有此
可单击的
标志类的单元格上执行
parseInt()
。有一个关于如何安全地确定字符串是否是数字的问题。顺便说一下,在你的桌面上,请关闭正确的标记,每次你写一些类似于
Titanum
(打开
th
-标记并关闭
td
-标记)的东西时,都会有一只小猫死在某处
if ((selected[k].innerText) && (/^\d+$/.test(selected[k].innerText))) {
    total += parseInt(selected[k].innerText);
}