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

在javascript中添加输入时未定义的输出

在javascript中添加输入时未定义的输出,javascript,html,Javascript,Html,试着做一个BMR计算器作为家庭作业。我想我已经解决了大部分问题,但是在我的输出字段中没有定义为输出。代码如下: <input class="boks" placeholder="vekt i kg" id="vekt" type="text"> <input class="boks" placeholder="høyde i cm" id="hoyde" type="text"> <input class="boks" placeholder="alder" i

试着做一个BMR计算器作为家庭作业。我想我已经解决了大部分问题,但是在我的输出字段中没有定义为输出。代码如下:

<input class="boks" placeholder="vekt i kg" id="vekt" type="text">

<input class="boks" placeholder="høyde i cm" id="hoyde" type="text">

<input class="boks" placeholder="alder" id="alder" type="text">

<button id="beregn" onclick="utregning()">Regn ut din BMR</button>

<input class="boks" placeholder="Din BMR" id="output" type="text" 
readonly="true">

您需要从函数内部的输入获取所有值,因为函数外部的代码将在调用utreging之前执行,此时输入字段的值将为空

var konstant=66.5; 功能超调节{ var vekt=parseIntdocument.getElementByIdvekt.value; var vektutr=vekt*13.75; var hoyde=parseIntdocument.getElementByIdhoyde.value; 变量hoydeutr=hoyde*5.003; var alder=parseIntdocument.getElementByIdalder.value; var alderutr=alder*6.755; var sum=+konstant++vektutr++hoydeutr-+alderutr; document.getElementByIdoutput.value=总和; } 注册号ut din BMR
js:试试这个代码:我试过了,效果很好

<!DOCTYPE html>
<html>

    <head>
        <title>
            My Web Page
        </title>

    <script>
        function utregning() {
var konstant = 66.5;

var vekt = parseInt(document.getElementById("vekt").value);

var vektutr = vekt*13.75;

var hoyde = parseInt(document.getElementById("hoyde").value);

var hoydeutr = hoyde*5.003;

var alder = parseInt(document.getElementById("alder").value);

var alderutr = alder*6.755;

var sum = +konstant +vektutr +hoydeutr - alderutr;

document.getElementById("output").value = sum;

}   
    </script>

    </head>

<body>

<input class="boks" placeholder="vekt i kg" id="vekt" type="text">

<input class="boks" placeholder="høyde i cm" id="hoyde" type="text">

<input class="boks" placeholder="alder" id="alder" type="text">

<button id="beregn" onclick="utregning()">Regn ut din BMR</button>

<input class="boks" placeholder="Din BMR" id="output" type="text" 
readonly="true">

</body>


</html>

在获得值之前,您需要在页面加载时从输入字段中获取值。您需要将所有变量放入函数中,否则,他们在用户做任何事情之前就得到了值。如果能解释为什么它工作得很好,这个答案会更有用。ok@auxTaco。如果用户将所有值都放在函数中,那么他可以确保所有变量都以正确的方式初始化…对不起,我是新手…我犯了一个新手错误,忘记了我需要创建函数,你知道,一个函数。谢谢!
<!DOCTYPE html>
<html>

    <head>
        <title>
            My Web Page
        </title>

    <script>
        function utregning() {
var konstant = 66.5;

var vekt = parseInt(document.getElementById("vekt").value);

var vektutr = vekt*13.75;

var hoyde = parseInt(document.getElementById("hoyde").value);

var hoydeutr = hoyde*5.003;

var alder = parseInt(document.getElementById("alder").value);

var alderutr = alder*6.755;

var sum = +konstant +vektutr +hoydeutr - alderutr;

document.getElementById("output").value = sum;

}   
    </script>

    </head>

<body>

<input class="boks" placeholder="vekt i kg" id="vekt" type="text">

<input class="boks" placeholder="høyde i cm" id="hoyde" type="text">

<input class="boks" placeholder="alder" id="alder" type="text">

<button id="beregn" onclick="utregning()">Regn ut din BMR</button>

<input class="boks" placeholder="Din BMR" id="output" type="text" 
readonly="true">

</body>


</html>