接受用户输入,在javascript中执行计算
Take User input to perform calculation in javascript
我已经写了这段代码,但它不工作。我想使用用户输入的值来执行以下计算…
function calculateBasic()
{
var uservalue = form.size.value;
var powerForOrganic = Math.pow(uservalue,1.05);
var effortForOrganic = 2.4 * power;
var powerTdevOrganic = Math.pow(effortForOrganic,0.38);
var tdevForOrganic = 2.5 * powerTdevOrganic;
var averageStaffForOrganic = effortForOrganic / tdevForOrganic;
var productivityLevelForOrganic = averageStaffForOrganic / effortForOrganic;
alert( "Effort :" + effortForOrganic + "TDEV :" + tdevForOrganic + "Average Staff :" + averageStaffForOrganic + "Productivity :" + productivityLevelForOrganic);
}
<input type="text" id="size" placeholder="Enter the size in KLOC">
<input type="button" id="enterInfo" Value="Submit" onclick="calculateBasic(this.form);">
你的一行应该是
var uservalue = document.getElementById("size").value;
power
也未定义。您可能指的是powerForOrganic
,它在前一行中定义过。
var effortForOrganic = 2.4 * powerForOrganic;
下面是完整的代码
function calculateBasic() {
var uservalue = Number(document.getElementById("size").value);
var powerForOrganic = Number(Math.pow(uservalue,1.05));
var effortForOrganic = Number(2.4 * powerForOrganic);
var powerTdevOrganic = Number(Math.pow(effortForOrganic,0.38));
var tdevForOrganic = Number(2.5 * powerTdevOrganic);
var averageStaffForOrganic = effortForOrganic / tdevForOrganic;
var productivityLevelForOrganic = averageStaffForOrganic / effortForOrganic;
alert( "Effort :" + effortForOrganic + "TDEV :" + tdevForOrganic + "Average Staff :" + averageStaffForOrganic + "Productivity :" + productivityLevelForOrganic);
}
var button = document.getElementById("enterInfo");
button.addEventListener("click", function() {
calculateBasic();
});
http://jsfiddle.net/739amacp/在第4行中,当我认为您打算引用powerForOrganic
时,您引用了power
。
这让我想起了用javascript编程的旧时代。它仍然有效。
1)你传递形式作为参数给函数,但函数没有得到它。2)你在函数内部使用的一些变量没有声明或可用。3)如果你得到的是form作为form的值…值,则应该为该元素命名。
function calculateBasic(form)
{
var uservalue = (form.size.value);
var powerForOrganic = Math.pow(uservalue,1.05);
var effortForOrganic = 2.4 * powerForOrganic;
var powerTdevOrganic = Math.pow(effortForOrganic,0.38);
var tdevForOrganic = 2.5 * powerTdevOrganic;
var averageStaffForOrganic = effortForOrganic / tdevForOrganic;
var productivityLevelForOrganic = averageStaffForOrganic / effortForOrganic;
alert( "Effort :" + effortForOrganic + "TDEV :" + tdevForOrganic + "Average Staff :" + averageStaffForOrganic + "Productivity :" + productivityLevelForOrganic);
}
<form>
<input type="text" name="size" id="size" placeholder="Enter the size in KLOC">
<input type="button" id="enterInfo" Value="Submit" onclick="calculateBasic(this.form)">
</form>
相关文章:
- JavaScript执行暂时挂起页面
- 页面在我的javascript执行后重新加载,我不希望它这样做
- 如何在使用jQuery.html()时防止javascript执行
- 如何打开一个新窗口或选项卡,并将其提供给javascript执行
- 如何在Ajax加载新内容时停止JavaScript执行
- 如何使用xpath和Javascript执行器打印文本
- cakehp2.x用javascript执行控制器
- 如何在不使用javascript执行的情况下为函数分配参数
- Javascript执行顺序错误
- Javascript执行顺序和回调
- 如何在Javascript执行后防止浏览器锁定
- JavaScript执行从函数声明开始,而不是从$(document).ready()开始
- 在asp.net页面中显示javascript执行过程中的加载图标
- 基于浏览器窗口大小的条件 JavaScript 执行
- 使用 JavaScript 执行一行 PHP(不包括 PHP 文件)
- Dom 解析和 JavaScript 执行
- 为什么通过javascript执行php可以工作
- JavaScript执行路径
- 从javaScript执行服务器端代码
- 如何使用Javascript执行客户端web抓取