0

我有一个带有两个文本框的表单。我想在一个框中输入一个数字,按“转换”链接,让它将第一个框中的数字计算为摄氏度并将其放在第二个文本框中。到目前为止它不起作用,我觉得我缺少一些小东西......我该怎么办?

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
body
{
background-color: white;
}

h2
{
position: absolute;
left:200px;
top:5px;
color: cadetblue;
}
p
{
text-align: center;
font-family: times new roman;
color: black;
}
</style>
<script>
        function f2cCalc(input)
    {
        var fbox = document.getElementById(input);
        var cbox = document.getElementById(cinput);
       var f = parseInt(fbox.value);
       var cel = Math.round(5/9*(f-32));
       document.getElementById(cbox).value=cel;
      }
</script>
    </head>
    <body>
        <form method="get" action="">

    <h2>Temp calculator</h2>
<br />
<br />
<br/>
<br/>
<br/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        F<input id="finput" type="number" STYLE="background-color: cadetblue; color: green;" value="0"/>
        &nbsp;&nbsp;&nbsp;&nbsp;
        C<input id="cinput" type="number" STYLE="background-color: cadetblue; color: green;" value="0"/>

        <a href="javascript:f2cCalc(finput)">Convert</a>

        </form>
    </body>
</html>

enter code here
4

5 回答 5

0

这两行可能会导致您的问题:

var fbox = document.getElementById(input);
var cbox = document.getElementById(cinput);

改成:

var fbox = document.getElementById(input);
var cbox = document.getElementById('cinput');

基本上,JavaScript 试图从变量而不是 DOM 加载 id。

于 2013-09-14T20:04:49.530 回答
0

您的代码中有错字。Belwo 提到三行是问题所在。

改变

 var fbox = document.getElementById(input);
 var cbox = document.getElementById(cinput);
 document.getElementById(cbox).value=cel;

 var fbox = document.getElementById('finput');
 var cbox = document.getElementById('cinput');
 cbox.value=cel;

DEMO FIDDLE

于 2013-09-14T20:05:55.223 回答
0

你需要很少的修改

<a href="javascript:f2cCalc('finput')">Convert</a>

var cbox = document.getElementById('cinput');

检查这个小提琴

于 2013-09-14T20:19:00.130 回答
0

你的函数调用应该是这样的:

 <a href="javascript:f2cCalc('finput')">Convert</a>
于 2013-09-14T20:59:07.587 回答
0

或者你可以得到自切片面包以来最甜的东西;查询。将这个坏男孩插入你的头部标签:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

事实上,我有一个小提琴给你。Jquery 让事情变得容易多了。希望这对你有用。

于 2013-09-14T20:33:37.777 回答