1

我必须用摄氏(C)和华氏(F)进行计算,我认为表格动作线是错误的。我该如何解决?

这是我的 HTML:

<form action="javascript.html">
    Convert Celsius to Fahrenheit:<br>
    <input type="text" name="converterCtoF"><br>
    <input type="submit" value="Submit">
</form>

这是我的 JavaScript 代码:

function tempertureConverter(C) {
    return (9/5)*C + 32;
}

另一种方式呢?将 F 转换为 C。

4

4 回答 4

2

您应该使用表单发布到不同的文件,但是由于您没有指定要发布到的页面的标记,因此这里有一个解决方案,它将在当前页面上显示华氏温度。

<script>
    function tempertureConverter(){
        var C = document.getElementById("degree").value;
        alert((9/5)*C+32);
    }
</script>

<form>
    Convert Celsius to Fahrenheit:<br>
    <input type="text" name="converterCtoF" id = "degree"><br>
    <input type="button" value="Submit" id = "submit"
           onClick = "tempertureConverter()">
</form>

以上获取用户输入的摄氏度值并在其上运行转换函数。然后,结果会在浏览器中显示为弹出窗口。

一个工作示例是here

于 2013-11-09T20:49:33.750 回答
1

这是你的想法吗它监听表单提交并从摄氏度文本字段计算华氏度。这一切都在一页上。

HTML:

<form name="temperature_form" action="">
    Convert Celsius to Fahrenheit:<br>
    <input type="text" name="converterCtoF" id="converterCtoF"><br>
    <input type="submit" value="Submit">
</form>

JavaScript:

document.forms["temperature_form"].onsubmit = function(){
    var c = document.getElementById("converterCtoF").value;
    var f = (9/5)*c + 32;
    alert(f);
    return false;
}
于 2013-11-09T20:46:47.973 回答
0

我认为您想将表单操作设置为您的 PHP 脚本,而不是 JavaScript。

<form action="celsius.php" method="get">
    Convert Celsius to Fahrenheit:<br>
    <input type="text" name="converterCtoF"><br>
    <input type="submit" value="Submit">
</form>

然后在 celsius.php 中,您可以通过 $_GET['converterCtoF'] 访问文本字段值。

于 2013-11-09T20:39:58.220 回答
0

您不会更改 PHP 脚本。您需要创建一个。在上面的这个例子中......

<form action="celsius.php" method="get">
    Convert Celsius to Fahrenheit:<br>
    <input type="text" name="converterCtoF"><br>
    <input type="submit" value="Submit">
</form>

您需要创建一个名为 celcius.php 的文件并添加类似于以下内容的内容:

<?php
  $c = $_GET['converterCtoF'];
  $f = convertTemp(c);

  echo(f);

  function convertTemp(temp) {
    return (9/5)*C + 32;
  }
?>
于 2013-11-09T21:09:40.723 回答