Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS未显示错误的更新结果_Javascript_Html - Fatal编程技术网

Javascript JS未显示错误的更新结果

Javascript JS未显示错误的更新结果,javascript,html,Javascript,Html,我得到的不是39500输出,而是500。有人能帮我吗,我想如果gw达到0,墙上就不会有-500了 我使用了我的代码,但它不起作用。 HTML 你的代码运行得很好,只是你这里有个错误 <span class= id="wall">1000</span></p> 您的主要问题是您正在执行var c=a-b;,b是数字,但a是字符串元素。innerHTML-不做parseIntvalue,以该值为基数。。。还有其他的数学减法混乱 相反: //帮助器函数将小于0的

我得到的不是39500输出,而是500。有人能帮我吗,我想如果gw达到0,墙上就不会有-500了

我使用了我的代码,但它不起作用。 HTML


你的代码运行得很好,只是你这里有个错误

<span class= id="wall">1000</span></p>

您的主要问题是您正在执行var c=a-b;,b是数字,但a是字符串元素。innerHTML-不做parseIntvalue,以该值为基数。。。还有其他的数学减法混乱

相反:

//帮助器函数将小于0的值设置为0 函数zeroMinval{ 返回parseIntval,10<0?0:val; } 函数发送{ var EL_gw=document.getElementById'gw', EL_wa=document.getElementById'wall', gw=parseIntEL_gw.innerHTML,10, wa=parseIntEL_wa.innerHTML,10, hitVal=500; //减去 gw-=hitVal; wa-=希瓦尔; //修正为0 gw=zeroMingw; wa=zeroMinwa; EL_gw.innerHTML=gw; EL_wa.innerHTML=wa; } 步兵:40000人 堡垒:1000
派遣部队注意到这里有什么奇怪的地方吗?在你的墙跨度中,你有一个没有值的class属性,这可能使该元素无效,不允许你选择它作为第一部分谢谢你。但是在点击发送部队后,我没有得到39500的输出,我得到500,还有一个如果问题,请你为第一部分。但是在点击发送部队后,我没有得到39500的输出,还有一个ifissue@urosv你好我以为你自己能搞定,但还是给你。你不必做太多的代码更改。希望这对你有所帮助1.你的例子中c是什么?2.如果你的兵力比墙能量少怎么办?我知道默认值为10,但总是尝试使用基数参数和parseInt。还要缓存该值,而不是对相同的...@RokoC.Buljan进行两次解析。谢谢你,伙计。我更新了代码以解决您的询问。如果你还有什么要补充的,请告诉我。这也帮了我的忙。
function send(){
    var a = document.getElementById('gw').innerHTML;
    var b = 500;
    var c = a-b;

    var label = document.getElementById('wall');
    label.innerHTML = parseInt(label.innerHTML) - b;
    var label = document.getElementById('gw');
    label.innerHTML = parseInt(label.innerHTML) - c;

}
<span class= id="wall">1000</span></p>
function send(){
    var labelWall = document.getElementById('wall');
    var labelGW = document.getElementById('gw');
    var wallValue = parseInt(labelWall.innerHTML, 10);
    var GWValue = parseInt(labelGW.innerHTML, 10);
    var b = 500;

    if(wallValue > 0 && GWValue > 0) {
        labelGW.innerHTML = GWValue - b;
        labelWall.innerHTML = wallValue - b;
    }
}