Javascript 如何从表单输入到变量中获取值

Javascript 如何从表单输入到变量中获取值,javascript,Javascript,今天刚开始学习Javascript,我被卡住了。当我提交时,页面会重新加载。我把价值放错地方了吗?也许是别的什么错误 <script type="text/javascript"> function Calculate() { var volume = document.getElementById('volume').value; var carbonation = document.getElementById('carbo

今天刚开始学习Javascript,我被卡住了。当我提交时,页面会重新加载。我把价值放错地方了吗?也许是别的什么错误

    <script type="text/javascript">
        function Calculate() {
        var volume = document.getElementById('volume').value;
        var carbonation = document.getElementById('carbonation').value;
        var temperature = document.getElementById('temperature').value;

        var sucrose = (15.195 * volume * (carbonation - 3.0378 + (0.050062 * temperature) - (0.00026555 * (temperature * temperature))))/28.4;
        var dextrose = sucrose + (sucrose * 0.15);

        document.write('<div id="result">You need ' + math.round(dextrose * 100)/100 + ' ounces of dextrose</div>');}
    </script>
    <form>
    <input id="volume" type="text">
    <input id="carbonation" type="text">
    <input id="temperature" type="text">
    <input type="submit" onclick="Calculate();" value="Calculate">
    </form>

函数计算(){
var volume=document.getElementById('volume')。值;
var carbitation=document.getElementById('carbitation')。值;
var temperature=document.getElementById('temperature')。值;
var蔗糖=(15.195*体积*(碳化-3.0378+(0.050062*温度)-(0.00026555*(温度*温度)))/28.4;
var葡萄糖=蔗糖+(蔗糖*0.15);
写下('你需要'+数学圆(葡萄糖*100)/100+盎司葡萄糖');}

表单提交将在函数执行之前发生,因此当您单击该按钮时,页面将重新加载而不是运行您的函数


改为使用

表单提交将在函数执行之前进行,因此当您单击该按钮时,页面将重新加载而不是运行函数

改用

您需要将

return false;
在函数末尾,这样页面就不会重新加载

像这样

function Calculate() {
    // All Code here...

}
这将阻止提交表单

您需要使用submit事件,而不是附加click事件

将ID添加到表单中

<form id="myForm">
把你的按钮换成

<input type="submit" value="Calculate">

您需要将

return false;
在函数末尾,这样页面就不会重新加载

像这样

function Calculate() {
    // All Code here...

}
这将阻止提交表单

您需要使用submit事件,而不是附加click事件

将ID添加到表单中

<form id="myForm">
把你的按钮换成

<input type="submit" value="Calculate">


您希望发生什么?不要使用submit。我认为type=“button”是您所需要的。我希望在页面上显示document.write中的内容。页面刚刚刷新:/Submit将尝试使用HTTP POST方法发送数据,请改用按钮。另外,在函数中,删除最后一个分号,IE的某些版本不喜欢这样。您希望发生什么?不要使用submit。我认为type=“button”是您所需要的。我希望在页面上显示document.write中的内容。页面刚刚刷新:/Submit将尝试使用HTTP POST方法发送数据,请改用按钮。另外,在你的函数中,删除最后一个分号,IE的一些版本不喜欢这样。就是这样!非常感谢你!成功了!非常感谢你@rid如果表单不在任何地方,那么为什么它在问题中说页面正在重新加载?如果你没有对表单应用
操作
,它只会使用当前页面。实际上,
也会提交表单,我不知道
但是…@rid如果表单没有任何地方,为什么它会在问题中说页面正在重新加载?如果您没有对表单应用
操作
,它只会使用当前页面。实际上,
也会提交表单,但我不知道
的情况。。。。