Javascript表单计算,带单选按钮和;文本框
单击按钮时,jQuery库未正确导入,表单未在BAC字段中显示答案。从这一点来看,答案应该相对简单。请检查BAC字段的显示代码Javascript表单计算,带单选按钮和;文本框,javascript,jquery,html,forms,javascript-events,Javascript,Jquery,Html,Forms,Javascript Events,单击按钮时,jQuery库未正确导入,表单未在BAC字段中显示答案。从这一点来看,答案应该相对简单。请检查BAC字段的显示代码 <html> <head> <meta charset="utf-8" /> <title>bac2</title> </head> <body> <p></p> <form actio
<html>
<head>
<meta charset="utf-8" />
<title>bac2</title>
</head>
<body>
<p></p>
<form action="" id="bacForm">
<input type="radio" name="gender" value="male" /> Male<br /><br>
<input type="radio" name="gender" value="female" /> Female<br><br>
Weight <input type="text" name="weight" id="weight"/><br><br>
Hours <input type="text" name="hours" id="hours" /><br><br>
Drinks <input type="text" name="drinks" id="drinks"/><br><br>
<INPUT TYPE="button" value="submit" name="submit"><br><br>
BAC: <input type="text" name="bac" id="bac"/>
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
<script type="text/javascript">
$('#submit').click(function(){
var gender = $('input[name=gender]:checked', '#bacForm').val();
var weight = parseInt($('#weight').val()) || 0;
var hours = parseInt($('#hours').val()) || 0;
var drinks = parseInt($('#drinks').val()) || 0;
var bac = 0;
if (gender=="male"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .68)) - (0.015 * hours);
}else if(gender=="female"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .55)) - (0.015 * hours);
}
$('#bac').val(bac);
});
</script>
</body>
</html>
bac2
男性
女性
重量
小时数
饮料
美国银行:
$(“#提交”)。单击(函数(){
var gender=$('input[name=gender]:选中','#bacForm').val();
var-weight=parseInt($('#weight').val())| 0;
var hours=parseInt($('#hours').val())| 0;
var diverses=parseInt($('#diverss').val())| 0;
var-bac=0;
如果(性别=“男性”){
bac=((饮料*.06*100*1.055)/(重量*.68))-(0.015*小时);
}否则,如果(性别=“女性”){
bac=((饮料*.06*100*1.055)/(重量*.55))-(0.015*小时);
}
$('#bac').val(bac);
});
回答您的问题:是的,确实可以使用单选按钮和文本框中的值来执行计算
对于您的特定场景,您需要问一个更具体的问题。尝试在代码中放置一些断点,看看执行时会发生什么。。。发布问题时,请告诉我们该问题与您的期望不同的具体位置。回答您的问题:是的,确实可以使用单选按钮和文本框中的值来执行计算
对于您的特定场景,您需要问一个更具体的问题。尝试在代码中放置一些断点,看看执行时会发生什么。。。在发布问题时,请告诉我们它到底在哪里做了与您期望不同的事情。我相信您只是在学习JS,但您以一种非常不必要、复杂的方式编写了所有代码。您可以将代码简化很多,请参见下面的示例(注意,我使用jQuery只是为了更容易地获取值)
你可以在现场看到这个,我相信你只是在学习JS,但你已经用一种非常不必要、复杂的方式编写了所有代码。您可以将代码简化很多,请参见下面的示例(注意,我使用jQuery只是为了更容易地获取值)
您可以在上看到这个直播,您说您正在寻找simple,所以我制作了一个快速jQuery小提琴,演示了一种更简单的方法。在这里查看: 主要代码如下
$('#submit').click(function(){
var gender = $('input[name=gender]:checked', '#bacForm').val();
var weight = parseInt($('#weight').val()) || 0;
var hours = parseInt($('#hours').val()) || 0;
var drinks = parseInt($('#drinks').val()) || 0;
var bac = 0;
if (gender=="male"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .68)) - (0.015 * hours);
}else if(gender=="female"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .55)) - (0.015 * hours);
}
$('#answer').val(bac);
});
你说你在寻找简单的,所以我制作了一个快速的jqueryfiddle来演示一种更简单的方法。在这里查看: 主要代码如下
$('#submit').click(function(){
var gender = $('input[name=gender]:checked', '#bacForm').val();
var weight = parseInt($('#weight').val()) || 0;
var hours = parseInt($('#hours').val()) || 0;
var drinks = parseInt($('#drinks').val()) || 0;
var bac = 0;
if (gender=="male"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .68)) - (0.015 * hours);
}else if(gender=="female"){
bac = ((drinks * .06 * 100 * 1.055) / (weight * .55)) - (0.015 * hours);
}
$('#answer').val(bac);
});
这是成品:;我必须说这是一个不错的大学工具。这是成品:;我必须说这是一个不错的大学工具。好的。该代码用于根据男性或女性值和输入数值的文本框计算血液酒精含量。这些反过来,输出血液酒精含量百分比。@noahtk-是的,我收集到:)不过你需要在这里付出一点努力。。。在调试器中运行你的代码,告诉我们它所做的与你期望的不同之处我认为是这样,但问题是它甚至不会运行。好的。。。那么您会收到什么错误消息呢?打开您正在使用的任何浏览器的javascript控制台,查看错误消息$(function()在Javascript控制台中未定义。不确定如何修复。我想我的问题可能是嵌入。好的。代码是从男性或女性值和输入数值的文本框中计算血液酒精含量。这些文本框依次输出血液酒精含量百分比。@noahtk-是的,我收集到:)不过,你需要在这里付出一点努力。。。在调试器中运行你的代码,告诉我们它所做的与你期望的不同之处我认为是这样,但问题是它甚至不会运行。好的。。。那么您会收到什么错误消息呢?打开您正在使用的任何浏览器的javascript控制台,查看错误消息$(function()在Javascript控制台中未定义。不确定如何修复。我想我的问题可能是嵌入。先生,你太棒了。谢谢你建议使用jQuery。从现在开始,我可能应该使用它。嵌入它有困难。一旦嵌入,当我单击提交时,表单会自动重置。有什么建议吗?Javascript控制台说$func定义不完整。是否正确包含jQuery?我想是的,请查看上面更新的代码。不过我没有使用舍入。您应该将脚本放在head标记中,并且不要忘记jQuery函数:
$(function(){})
先生,您真是太棒了。谢谢您推荐jQuery。从现在开始,我可能应该使用它。嵌入时遇到问题。一旦嵌入,表单会在我单击“提交”时自动重置。有什么建议吗?Javascript控制台说$function未定义。您是否正确包含jQuery?我想是的,请查看上面更新的代码。但是我没有使用舍入。您应该将脚本放在head标记中,并且不要忘记jQuery函数:$(function(){})
我尝试从JSFIDLE将其嵌入html中,但在单击submit时它没有做任何事在Javascript控制台中未定义。是否包含对jQuery库的引用?您可以在此处找到一些示例和快速概述不,我无法成功完成此操作。我在代码上方尝试了此操作:从提交按钮更改为常规按钮$('#应答')。val(bac)
变为$(“#bac”).val(bac);
-这是一个jQuery选择器,允许您选择一个或多个控件。$(“#bac”)
查找控件