Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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
Javascript 如何使此转换函数在两个方向上工作?_Javascript_Html_Input_Converters - Fatal编程技术网

Javascript 如何使此转换函数在两个方向上工作?

Javascript 如何使此转换函数在两个方向上工作?,javascript,html,input,converters,Javascript,Html,Input,Converters,我是JS新手,我很难只用输入完成转换器,我解释了这个问题! 我们有两个输入,米和英尺。当我把一个数字传输到英尺时,我得到的结果是米。我想对米做同样的思考。反之亦然 let metresEl=document.getElementById('InputMeters'); 功能长度转换器(valNum){ metresEl.value=valNum/3.2808; } 脚 米 您可以在LengthConvertor函数中添加另一个参数,表示输入单位(米或英尺),并使用if在函数内部进行相应转换

我是JS新手,我很难只用输入完成转换器,我解释了这个问题! 我们有两个输入,米和英尺。当我把一个数字传输到英尺时,我得到的结果是米。我想对米做同样的思考。反之亦然

let metresEl=document.getElementById('InputMeters');
功能长度转换器(valNum){
metresEl.value=valNum/3.2808;
}

脚
米

您可以在
LengthConvertor
函数中添加另一个参数,表示输入单位(米或英尺),并使用
if
在函数内部进行相应转换

function LengthConverter(valNum, inputUnit) {
   if(inputUnit === 'feet')
    metresEl.value = valNum/3.2808;
   if(inputUnit === 'meter')
    feetsEL.value = valNum * 3.2808;
}


<div class="container">
    <div class="form-group">
      <label>Feet</label>
      <input type="number" id="inputFeet" placeholder="Feet" oninput="LengthConverter(this.value,"feet")" onchange="LengthConverter(this.value,"feet")" >
    </div>
    <div class="form-group">
      <label>Metres</label>
      <input type="number" id="inputMetres" placeholder="Metres" oninput="LengthConverter(this.value,"meter")" onchange="LengthConverter(this.value,"meter")" >
    </div>
  </div>
函数长度转换器(数值,输入单位){
如果(输入单位==‘英尺’)
metresEl.value=valNum/3.2808;
如果(输入单位=='meter')
feetsEL.value=valNum*3.2808;
}
脚
米

添加了反向转换:

let metresEl=document.getElementById('InputMeters');
let feetEl=document.getElementById('inputfeets');
功能测力计(valNum){
metresEl.value=valNum/3.2808;
}
功能度量英尺(valNum){
feetEl.value=3.2808*valNum;
}

脚
米

您可以在每个输入中添加一个
元素。AddEventListener
,当它有机会得到它的值时,转换并输入正确的输入

let metresEl=document.getElementById('InputMeters');
let feetsEl=document.getElementById('inputFeets');
metresEl.addEventListener(“更改”,您的代码);
feetsEl.addEventListener(“更改”,您的代码);

例如,如果米输入发生变化,您将转换为feets并添加到feets输入。

谢谢您的回答您的代码工作得非常完美,非常清晰。@Furax如果您想说谢谢,请向上投票posti think使用第二个参数,如ID,它非常强大,如果我有多个输入,我选择此选项。这比有很多功能要好。您好,谢谢您的回答,但是代码不起作用<代码>metresEl.addEventListener('change',valNum=>metresEl.value=valNum/3.2808);feetsEl.addEventListener('change',valNum=>feetsEl.value=valNum*3.2808)