计算下降行星的重量并将其打印到输入类型

时间:2017-09-26 04:28:26

标签: javascript html5

我有一个表单的代码,其中包含一些带有不同选项的下拉菜单,我还创建了警告弹出消息,以便他们现在无法选择相同的行星。我还在一个文本框上禁用了一个输入以进行输入,因为我只能输入一个输入。

我的问题是如何根据我选择的下拉框计算行星的重量?并且在输入类型上打印/显示它意味着如果我选择地球并且我的输入类型(重量)是60N,如果我的第二个选择是金星,它将为我计算重量并打印/显示它为输入类型。

以下是我的HTML代码和JavaScript代码。我是JavaScript的新手。

html:

  <!DOCTYPE html>
 <html>
 <head>
  <title></title>
 </head>
  <body>
   <select name="select1" id="select1" onchange="process_selection(this)">
 <option value="">-- choose one --</option>
   <option value="0">Earth</option>
   <option value="1">Venus</option>
   <option value="2">Mars</option>
  <option value="3">Jupiter</option>
  <input type="text" name="123" id="text1" 
    onchange="process_selection(this)" placeholder=""> N
 </select>
    <br>

    <select name="select2" id="select2" onchange="process_selection(this)"> 
 <option value="">-- choose one --</option>
  <option value="0">Earth</option>
   <option value="1">Venus</option>
  <option value="2">Mars</option>
   <option value="3">Jupiter</option> 

     <input type="text" name = "123" id="text2" 
     onchange="process_selection(this)" placeholder=""> N


  </select>

javascript:

<script type="text/javascript">

 function process_selection(obj)
 {


var input1 = document.getElementById("select1").value;
var input2 = document.getElementById("select2").value;
var texta = document.getElementById("text1");
var textb = document.getElementById("text2");


if(input1 == input2)
{
    alert("Please select other planet");
}
 if(texta.value != "")
   {
     document.getElementById("text2").disabled = true ;

  } 
 if(textb.value != "")
 {
  document.getElementById("text1").disabled = true ;

 }

   // var xx = input1.options[input1.selectedIndex].value;
  var SurfaceGravityEarth = 1;
  var SurfaceGravityVenus= 0.907;
  var SurfaceGravityMars= 0.377;
  var SurfaceGravityJupiter= 2.364;
  var weight1 , weight2;
   // var sg1;
   //  var sg2;

  if (input1 == "0"  ) 
 {

weight1 = document.getElementById("text1") * SurfaceGravityEarth;
}

  if (input2 == "1"  ) 
  {
  weight2 = document.getElementById("text1") * SurfaceGravityVenus ;
  document.getElementById("text2").value= weight2 ;
  } 

}

我被困在计算部分。

1 个答案:

答案 0 :(得分:1)

首先,获取文本框的值并将其转换为数字类型(整数,浮点等)。 请尝试以下代码:

function test() {


     String.prototype.spacify = () => {
         console.log(this.split('').join(' '));
     }

}

使用parseInt()转换为整数类型。 如果要转换为float类型,请使用parseFloat() 或者您只需对整数和浮点数使用Number()方法