将 var 设置为嵌套的 HTML 元素文本值

Setting var to a nested HTML elements text value

本文关键字:HTML 元素 文本 嵌套 var 设置      更新时间:2023-09-26

所以我想从"顶级"中获取"嵌套"的值,并从"total"中减去它。我确定我的代码效率非常低,请原谅我。

.HTML:

  <span class="toplevel"> 
    Clickable
    <span class="nested"> 50 </span>
</span> <br>
All put together is...
<div id="total">
  9999
</div>

.JS:

$(document).ready(function() {
  var totalcp = parseInt("9999", 10);
  $('#total').text(totalcp).toString();
  $('.toplevel').click(function() {
      var cpcost = ('.nested');
    totalcp = totalcp - cpcost; 
    $('#total').text(totalcp).toString();
  });
});

我的主要问题是这行:

var cpcost = ('.nested');

我知道我只是错过了一些愚蠢的东西!!!提前谢谢。

Codepen 链接 - 在上面的组合中,问题再次是 var cpcost 没有获得"嵌套"值。如果替换为固定数字,则工作正常。

您忘记在以下代码中添加$

var cpcost = ('.nested');

将其替换为以下代码应该有效:

var cpcost =parseInt( $(this).find('.nested').text() );

要在当前单击的范围(.toplevel)中查找.nested,只需使用$(this)即可。通过执行此操作,可以将查询限制为单击的元素。此外,要简单地查找特定元素,您可以使用 jQuery 中的find函数。