Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.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 在这段代码中,如何从“自动求和”的“输入类型”复选框中展开值?_Javascript_Php - Fatal编程技术网

Javascript 在这段代码中,如何从“自动求和”的“输入类型”复选框中展开值?

Javascript 在这段代码中,如何从“自动求和”的“输入类型”复选框中展开值?,javascript,php,Javascript,Php,在这段代码中,如何从自动求和的输入类型复选框中分解值 徖 <form id="form1"> <input type="checkbox" value="bgh_9.99" onclick="UpdateCost()">Game 1 ( 9.99)<br> <input type="checkbox" value="ujh_19.99" onclick="UpdateCost()">Game 2 (19.99)<br> <inp

在这段代码中,如何从自动求和的输入类型复选框中分解值

<form id="form1">
<input type="checkbox" value="bgh_9.99"  onclick="UpdateCost()">Game 1 ( 9.99)<br>
<input type="checkbox" value="ujh_19.99" onclick="UpdateCost()">Game 2 (19.99)<br>
<input type="checkbox" value="hhb_27.50" onclick="UpdateCost()">Game 3 (27.50)<br>
<input type="checkbox" value="uu_45.65" onclick="UpdateCost()">Game 4 (45.65)<br>
<input type="checkbox" value="jjhh_87.20" onclick="UpdateCost()">Game 5 (87.20)<br>
<input type="checkbox" value="hhh_87.20" onclick="UpdateCost()">Game 5 (87.20)<br>    
<input type="text" id="totalcost" value="">
</form>

<script type="text/javascript">
var clickHandlers = (function () {
    var form1 = document.getElementById("form1"),
        totalcost = document.getElementById("totalcost"),
// if this is always the last input in the form, we could avoid hitting document again with
// totalcost  = form1[form1.length - 1];
        sum = 0;
    form1.onclick = function (e) {
        e = e || window.event;
        var thisInput = e.target || e.srcElement;
        if (thisInput.nodeName.toLowerCase() === 'input') {
            if (thisInput.checked) {
                sum  += parseFloat(thisInput.value);
            }  else {
                if (thisInput.type.toLowerCase() === 'checkbox') {
                    sum -= parseFloat(thisInput.value);
                }
            }
            totalcost.value = (sum > 0) ? sum.toFixed(2) : "";
        }
    }
    return null;
}());
</script>
简单的方法是选择复选框值

var val = thisInput.value, // "bgh_9.99"
    split_array = val.split("_"), // ["bgh", "9.99"]
    number = split_array[1]; // "9.99"
sum += parseFloat(number); // 9.99

通过,您将了解如何执行此操作。A.P.-此演示值=50,但在我的代码值=abc_50中,我必须对其进行分解。当然,它可以简化为parseFloatthisInput.value.split_[1]