Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.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/7/image/5.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 - Fatal编程技术网

Javascript计算器第三部分问题

Javascript计算器第三部分问题,javascript,Javascript,使用计算器模板,我编辑并添加了自己的部分 我希望用户能够选择纸张尺寸、张数和纸张重量 最终的计算结果是 (张数*纸张重量)*纸张尺寸 我无法正确添加纸张重量部分。(在代码中命名为gsm) A3 A4 A5 选择工作表 5张 10张 110 120 130 代码 //设置关联数组-纸张大小 var paper_size=新数组(); 纸张尺寸[“A3”]=2; 纸张尺寸[“A4”]=1; 纸张尺寸[“A5”]=0.5; //设置关联数组-图纸数量 var sheet_amount=新数组(

使用计算器模板,我编辑并添加了自己的部分

我希望用户能够选择纸张尺寸、张数和纸张重量

最终的计算结果是

(张数*纸张重量)*纸张尺寸

我无法正确添加纸张重量部分。(在代码中命名为gsm)


A3
A4
A5
选择工作表 5张 10张 110
120
130

代码

//设置关联数组-纸张大小
var paper_size=新数组();
纸张尺寸[“A3”]=2;
纸张尺寸[“A4”]=1;
纸张尺寸[“A5”]=0.5;
//设置关联数组-图纸数量
var sheet_amount=新数组();
活页金额[“无”]=0;
活页金额[“5张”]=5张;
活页金额[“10张”]=10;
//设置关联数组-gsm\U金额
var gsm_amount=新数组();
gsm_金额[“100”]=100;
gsm_金额[“110”]=110;
gsm_金额[“120”]=120;
gsm_金额[“130”]=130;
gsm_金额[“140”]=140;
函数getpaperchoice()
{  
var paperchoice=0;
var theForm=document.forms[“weightform”];
var selectedsheets=form.elements[“selectedsheets”];
对于(变量i=0;i
请提供任何帮助和建议


Gsm按照建议更改为选定的Gsm,已进行了一半,但问题尚未解决…

JavaScript数组不能这样工作。您想改用对象-
var paper_size={“A3”:2,“A4”:1,“A5”:0.5}
var selectedgsm=form.elements[“gsm”]而是
var selectedgsm=form.elements[“selectedgsm”]与表单元素名称和其他元素保持一致?Gsm根据建议更改为selectedgsm,中途但问题未解决。。。
    <form action="" id="weightform" onsubmit="return false;">
    <div>

            <label class='radiolabel'><input type="radio"  name="selectedsheets" value="A3" onclick="calculateTotal()" />A3</label><br/>
            <label class='radiolabel'><input type="radio"  name="selectedsheets" value="A4" onclick="calculateTotal()" />A4</label><br/>
            <label class='radiolabel'><input type="radio"  name="selectedsheets" value="A5" onclick="calculateTotal()" />A5</label><br/>

            <select id="sheets" name='sheets' onchange="calculateTotal()">
            <option value="None">Select Sheets</option>
            <option value="5Sheets">5 Sheets</option>
            <option value="10Sheets">10 Sheets</option>
            </select>

            <label class='radiolabel'><input type="radio"  name="selectedgsm" value="100"/>110</label><br/>
            <label class='radiolabel'><input type="radio"  name="selectedgsm" value="110"/>120</label><br/>
            <label class='radiolabel'><input type="radio"  name="selectedgsm" value="120"/>130</label><br/>

            <div id="totalWeight"></div>

    </div>  
   </form>
             //Set up an associative array - paper_size
             var paper_size = new Array();
             paper_size["A3"]=2;
             paper_size["A4"]=1;
             paper_size["A5"]=0.5;

             //Set up an associative array - sheet_amount
             var sheet_amount= new Array();
             sheet_amount["None"]=0;
             sheet_amount["5Sheets"]=5;
             sheet_amount["10Sheets"]=10;

             //Set up an associative array - gsm_amount
             var gsm_amount= new Array();
             gsm_amount["100"]=100;
             gsm_amount["110"]=110;
             gsm_amount["120"]=120;
             gsm_amount["130"]=130;
             gsm_amount["140"]=140;

            function getpaperchoice()
            {  
                var paperchoice=0;
                var theForm = document.forms["weightform"];
                var selectedsheets = theForm.elements["selectedsheets"];
                for(var i = 0; i < selectedsheets.length; i++)
                {
                    if(selectedsheets[i].checked)
                    {

                        paperchoice = paper_size[selectedsheets[i].value];
                        break;
                    }
                }

                return paperchoice;
            }

            function getsheetchoice()
            {
                var sheetchoice=0;
                var theForm = document.forms["weightform"];
                 var selectedsheets = theForm.elements["sheets"];

                sheetchoice = sheet_amount[selectedsheets.value];

                return sheetchoice;
            }

            function getgsmchoice()
            {
                var gsmchoice=0;
                var theForm = document.forms["weightform"];
                var selectedgsm = theForm.elements["selectedgsm"];

                gsmchoice = gsm_amount[selectedgsm.value];

                return gsmchoice;
            }

            function calculateTotal()
            {
                var TotalWeight = (getsheetchoice() * getgsmchoice()) * getpaperchoice();

                //display the result
                var divobj = document.getElementById('totalWeight');
                divobj.style.display='block';
                divobj.innerHTML = "Total Weight "+TotalWeight;

            }