首页 > 解决方案 > 更改其他脚本结果的 javascript 变量

问题描述

我需要一种方法,我可以在输入点击时执行的不同函数的结果上更改 java 脚本函数的变量。

输入示例:

<input type="image" value="74" onclick="WeaponType(this);GetDamage(74);return false;" class="CompactPistol" src=".\Weapons\Bornheim_No_3_Extended.png" alt="Bornheim No.3 Extended">
<span style="color:whitesmoke">Bornheim No. 3 Extended</span>

(我也可以将 'GetDamage' 函数输入更改为 'this' 而不是直接更改值,然后只需更改函数输出以使用属性 'value'。在我的情况下,作为一张图片的值并不重要已设置。)

我需要该变量的脚本当前如下所示:

    <script id="ResultDamage">
        function GetDamage(x) {
            document.getElementById("DamageDealt").innerHTML = x;
        }
    </script>

这个ofc只输出函数的值。但是该值需要在更复杂的计算中使用

我也已经尝试过的是:

    <script id="ResultDamage">
        function GetDamage(x) {
            var z
            z = x;
            return z;
        }
        var d = z;
        document.getElementById("DamageDealt").innerHTML = d;
    </script>

和这个:

    <script id="ResultDamage">
        function GetDamage(x) {
            return x;
        }
        var d = GetDamage();
        document.getElementById("DamageDealt").innerHTML = d;
    </script>

这给了我“未定义”

任何帮助表示赞赏。因为我对此很陌生,所以保持简单可能是最好的(如果有一个简单的解决方案)

标签: javascripthtml

解决方案


根据对上述问题的评论......

如果您只需要在页面上全局存储一个值,那么您可以在函数之外声明一个变量并在任何函数中设置其值。例如:

var a = 0;
var b = 0;
// etc.

function GetDamage(x) {
    a = x;
    // perform a calculation as needed
    // write a result to the page as needed
}

在这种情况下,a和的值b存储在页面级别并可供其他函数使用,在函数调用之间保持它们的值等。因此,您可以拥有单独的函数,这些函数也将这些值用于自己的计算。


推荐阅读