2015-04-17 133 views
1

我想从html标记中获取文本并将其保存在js变量中。我所看到的是这样的:将HTML文本设置为JS变量

的JavaScript:

function Myfunction(){ 
    var x; //Fist num here 
    var y; //second num here 
    var z=x+y; 
    alert(z); 
} 

HTML:

<p id="num1">2</p> 
<p id="num2">3</p> 

我工作的一个计算器,并希望从“屏”采用的值,并将其保存到一个变量,做数学。每个数被分离像这样在计算程序:

<samp id="numb1">Any Number</samp><samp id="op">(+,-,*,/)</samp><samp id="numb2">Any Number</samp><samp id="answer">Answer prints here</samp> 

一旦答案被保存到一个变量,所述numb1,同前,和numb2被清除并且被打印的答案。

+1

'samp'标记用于实现更丰富的文字效果。如果你想**从“屏幕”**的值,你需要采取'输入'标签..说你可以使用'document.getElementById('numb1')。innerHTML'或'文档。 getElementById('numb1')。textContent'来检索将是'string'类型的值,所以在使用'parseInt'将转换添加到数字类型之前 –

+0

@Rakesh_Kumar非常感谢您给了我完整的答案!它现在有效 –

回答

0

您可以访问节点内容和存储这样的变量:

var vAnswer = document.getElementById("answer").innerHTML; 
+0

谢谢塔正是我正在寻找! –

+0

现在我得到了“[object HTMLelement]”作为答案? –

+0

抱歉也许是错字:Elment - > Element! – xerx593

0

var x = document.getElementById('numb1').innerHTML; 
 
var y = document.getElementById('numb2').innerHTML; 
 
document.getElementById('answer').innerHTML = parseInt(x,10) + parseInt(y,10);
<samp id="numb1">2</samp> 
 
<samp id="op">(+,-,*,/)</samp> 
 
<samp id="numb2">3</samp> 
 
<samp id="answer"></samp>

0

使用jQuery,你可以得到的值,如下图所示,

var x = $('#numb1').text(); 
 
var y = $('#numb2').text(); 
 
var z =parseInt(x,10) +parseInt(y,10); 
 
$('#answer').text('Total:'+z)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 

 
<samp id="numb1">2</samp> 
 
<samp id="op">(+,-,*,/)</samp> 
 
<samp id="numb2">3</samp> 
 
<samp id="answer"></samp>

单独使用javascript,使用var x = document.getElementById('numb1')。innerHTML;

0
function myFunction(){ 
    var x; //Fist num here 
var y; //second num here 
    x = $("#num1").text(); 
    y = $("#num2").text(); 
    alert(x); 
    alert(y); 
var z=parseInt(x,10)+parseInt(y,10); 
alert(z); 
} 
0

你想让它成为一种形式吗?你可能会想要这样的东西:

<html> 
    <head> 
     <script> 
      function calc() { 
       var leftInput = document.getElementById("left"), 
        left = parseInt(leftInput.value, 10), 
        operatorSelect = document.getElementById("operator"), 
        operator = operatorSelect.options[operatorSelect.selectedIndex].value, 
        rightInput = document.getElementById("right"), 
        right = parseInt(rightInput.value, 10), 
        expression = left + operator + right, 
        resultSpan = document.getElementById("result"); 
       resultSpan.innerHTML = eval(expression); 
       leftInput.value = ''; 
       rightInput.value = ''; 
      } 
     </script> 
    </head> 
    <body> 
     <form> 
      <input type="text" id="left"> 
      <select id="operator"> 
       <option value="+">+</option> 
       <option value="-">-</option> 
       <option value="*">*</option> 
       <option value="/">/</option> 
      </select> 
      <input type="text" id="right"> 
      <input type="button" onclick="calc()" value="="> 
      <span id="result"></span> 
     </form> 
    </body> 
</html>