0

我有一个带有许多输入的税收计算器,它们可以相互传递数据。用户只能看到一个输入,而其他输入位于隐藏的 div 中(仅用于计算建议)。

Google-Chrome 元素检查器在隐藏 div 中时不显示输入的值(但它显示属性 type="hidden" 的输入值)。那么如何检查和调试带有隐藏 div 的表单呢?

    $(document).ready(function(){
      $("#price").on("input paste keyup",function(){
      var power=$("#power").val();
      $("#taxSet").val(parseInt($("#price").val()) * 0.1);
      $("#taxAmount").val(parseInt($("#taxSet").val())*power  + 
      parseInt($("#price").val()));
      });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="price">
<div style="display:none">
   <input id="power" value="5">
   <input id="taxSet">
   <input id="taxAmount">
</div>

4

1 回答 1

0

您的意思是“我在 DOM 上看不到属性”#power吗?

我的第一个建议是使用 attr,所以更改属性值。

var fakeValye = 10;
$("..blah").val(fakeValue).attr('value', fakeValue);

如果你不这么说,你只是在谈论调试。您应该使用调试器关键字。

在此处输入图像描述

我为你重构了你的代码。

$(document).ready(function() {
    $("#price").on("input paste keyup", function() {
		debugger;
        var power = $("#power").val();
		var taxtSet = parseInt($("#price").val()) * 0.1;
        $("#taxSet").val(taxtSet);
		var taxAmount = parseInt($("#taxSet").val()) * power + parseInt($("#price").val())
        $("#taxAmount").val(taxAmount);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="price">
<div style="display:none">
   <input id="power" value="5">
   <input id="taxSet">
   <input id="taxAmount">
</div>

于 2018-01-09T07:46:54.443 回答