JavaScript计算在编辑模式下不起作用,从数据库加载的值

JavaScript计算在编辑模式下不起作用,从数据库加载的值,javascript,php,sql,Javascript,Php,Sql,我有总金额%,小于%和净金额。我已经用下面的代码添加了模态,但是当涉及到编辑模态时,它不起作用。从数据库加载的值 <select class="w3-select w3-border w3-small" id ="vtpercent" name="vtpercent" onchange="calculatevtnet(this.value)" required> <option val

我有总金额%,小于%和净金额。我已经用下面的代码添加了模态,但是当涉及到编辑模态时,它不起作用。从数据库加载的值

<select class="w3-select w3-border w3-small" id ="vtpercent" name="vtpercent" onchange="calculatevtnet(this.value)" required>
       <option value="" disabled selected>Select Percent</option>
       <option value="0.01">1%</option>
       <option value="0.02">2%</option>
</select>
--------------

选择百分比
1%
2%
--------------


函数calculatevtnet(val){
var vtgrouss=document.getElementById('vtgrouss');
var vtnet=vtgross-(vtgross/1.12*0.05)-(vtgross/1.12*val);
var vtnetdec=vtnet.toFixed(2);
var divobj=document.getElementById('vtnet');
divobj.value=vtnetdec;
}

您的问题需要更多的上下文,但在这里我可以看到
var vtgrouss=document.getElementById('vtgrouss')此元素处于模态中,因此在编辑模态时可能会调用函数
calculatevtnet()
,但模态尚未加载,因此js能够获取该元素,因此请在模态完全加载时尝试执行该操作

如果没有,那么分享你的全部代码,这样我们可以帮助你,谢谢

<script>
             function calculatevtnet(val){
              
                var vtgross = document.getElementById('vtgross');
                var vtnet= vtgross - (vtgross / 1.12 * 0.05) - (vtgross / 1.12 * val);
                var vtnetdec = vtnet.toFixed(2);
                var divobj = document.getElementById('vtnet');
                divobj.value = vtnetdec;
             }
</script>