Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有2个下拉菜单的JavaScript单元转换器_Javascript - Fatal编程技术网

带有2个下拉菜单的JavaScript单元转换器

带有2个下拉菜单的JavaScript单元转换器,javascript,Javascript,我是JavaScript新手。为了实践,尝试建立一个简单的单位转换器,就像谷歌用来把千克转换成磅,英寸转换成米,等等。 我想要一个输入框来输入数字值。 在那之后,HTML文件中有两个列表,这样我可以在第一个列表中选择转换的单元;第二个是我转换成的单位。 也许这是一个显而易见的问题,但我还没有找到这个问题的答案。我将发布我尝试的最后一个代码/方法 <!DOCTYPE html> <html lang="en" dir="ltr"> <head> &l

我是JavaScript新手。为了实践,尝试建立一个简单的单位转换器,就像谷歌用来把千克转换成磅,英寸转换成米,等等。 我想要一个输入框来输入数字值。 在那之后,HTML文件中有两个列表,这样我可以在第一个列表中选择转换的单元;第二个是我转换成的单位。 也许这是一个显而易见的问题,但我还没有找到这个问题的答案。我将发布我尝试的最后一个代码/方法

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title></title>
    <script src="simpleweightconversortest.js"></script>
  </head>
  <body>
    <form>

      <!-- Select 1-->
      <label>From:</label>
    <select name="converts" id="Selection">
        <option>Chose Option</option>
        <option value="kilograms1">Kilograms</option>
        <option value="grams1">Grams</option>
        <option value="miligrams1">Miligrams</option>
    </select>

    <!-- Select 2-->
    <label>To:</label>
  <select name="converts2" id="Selection2">
      <option>Chose Option</option>
      <option value="kilograms2">Kilograms</option>
      <option value="grams2">Grams</option>
      <option value="miligrams2">Miligrams</option>
  </select>


<!--INPUT-->
    <br>
    <br>
    <br>Value
    <input type="number" id="value" placeholder="Insert value">

<!--RESULT -->
    <br>Conversion
    <input type="text" id="convertedOuput">

    <br>
    <br>
    <input type="Button" onclick="Conversion()"
    value="convert">
</form>

  </body>
  </html>
我的“转换”输入框中没有任何输出。
我做错了什么?(我确信几乎所有内容)请提供帮助。

文档。getElementById('ConvertedUput')。value=result
应该显示函数的结果。

您有一个输入错误:

var madeSelection_1=selecFrom[selectFrom.selectedIndex]。值

这应该是
selectFrom
,而不是
selectFrom

另外,您需要使用
convertedOuput.value=result
设置输入字段的值,而不是设置其
innerHTML
。(顺便说一下,
convertedOutput
也拼写错误,应该是
convertedOutput
,但它是一致的,所以无论如何都应该可以工作。)

最后,您将检查转换按钮单击处理程序之外的选定单位,以便在用户更改下拉列表中的选择时不会更新这些单位。将设置
转换输出
进行选择1
进行选择2
的对应行移动到
转换
功能中。(说明:现在,代码在页面加载时运行一次,因此加载的值将始终是来自
选择选项
选项的空字符串。之后,每次单击按钮时都会运行此部分,因此值将是最新的。)

它现在可以工作了:

函数转换(){
var val=document.getElementById(“值”).value;
var convertedOutput=document.getElementById(“convertedOutput”);
var selectFrom=document.getElementById(“选择”);
var selectTo=document.getElementById(“Selection2”);
var madeSelection_1=selectFrom[selectFrom.selectedIndex]。值;
var madeSelection_2=selectTo[selectTo.selectedIndex]。值;
if(madeSelection_1==“千克1”和&madeSelection_2==“千克2”){
var结果=val*1;
convertedOutput.value=结果;
}
}

发件人:
选择选项
公斤
克
毫克
致:
选择选项
公斤
克
毫克



价值观
转化


对。您没有设置输入的HTML,而是更改其值。您好。非常感谢您花时间给出如此详细和清晰的解释。为了帮助初学者。我已经解决了这个问题,第二天发布后,我现在才看到答案。对不起,之前没说。我每天都越来越喜欢编码。社区似乎非常慷慨。希望有一天我能像现在一样帮助初学者。再次感谢。


    var val = document.getElementById("value").value;
    var convertedOuput =document.getElementById("convertedOuput");

    var selectFrom = document.getElementById("Selection");
    var selectTo = document.getElementById("Selection2");

    var  madeSelection_1 = selecFrom[selectFrom.selectedIndex].value;
    var  madeSelection_2 = selectTo[selectTo.selectedIndex].value;

  function Conversion() {
    if (madeSelection_1 == "kilograms1" && madeSelection_2 == "kilograms2") {
      var result = val * 1;
      document.getElementById('convertedOuput').innerHTML = result;

    }
}