2016-12-24 6 views
-6

私はもう一度、私のHTMLテキストは '未定義'と言います。私はこれが何を意味するかについていくつかの研究を行い、すべてを試しましたが、私はまだそれを働かせています。未定義JavaScriptで

<!DOCTYPE html> 
 
<html> 
 
    <title>Lets See</title> 
 
    <link href="https://fonts.googleapis.com/css?family=Josefin+Sans" rel="stylesheet"> 
 
    <style> 
 
     h1 { 
 
      font-family: cursive; 
 
     } 
 
     button { 
 
     font-family: josefin sans; 
 
     font-size: 30px; 
 
     border-radius: 10px; 
 
     background-color: red; 
 
     color: white; 
 
     } 
 
     input { 
 
      font-family: josefin sans; 
 
      font-size: 25px; 
 
     } 
 
     
 
    </style> 
 
<body> 
 

 
<input type="text" name="txtJob"> & <input type="text" name="twoPpl"> <br><br> 
 
<button onclick="myFunction()">Test</button> 
 

 
    <h1 id="people" name="people" style="float: right;"></h1><br><br><h1 style="float: right;">%</h1><h1 style="float: right;" id="demo"></h1> 
 

 
<script> 
 
    var jobValue = document.getElementById('txtJob').value 
 
    var twoPeople = document.getElementById('twoPpl').value 
 

 
    var skip = "&nbsp;& "; 
 
    var newVar = jobValue + skip; 
 
    var finVar = newVar + twoPeople; 
 
function myFunction() { 
 
    
 
    var x = document.getElementById("demo") 
 
    var y = document.getElementById("name"); 
 
    x.innerHTML = Math.floor((Math.random() * 100) + 1); 
 
    document.getElementById('people').innerHTML = finVar; 
 
} 
 
</script> 
 

 
</body> 
 
</html>

これは、この問題を回避するため、将来的に私を助ける私の友人のためだけに無用のプロジェクトであっても。

+3

: はここに可能な解決策です。 – Carcigenicate

+0

@Carcigenicateに言い換えると、 'input's' name'sを与えましたが、 'id'は与えませんでした。 – Klinger

+0

私は1にする必要がありました。これは11日前にあなたが聞いたのと同じ質問です。 – Carcigenicate

答えて

0

サイトがロードされているときに「jobValue」と「twoPeople」の値を1回だけ読み取ることに注意してください。あなたがtwoPpl`または `` txtJob`のIDを持つ要素を持っていない

<!DOCTYPE html> 
<html> 
<title>Lets See</title> 
<link href="https://fonts.googleapis.com/css?family=Josefin+Sans" rel="stylesheet"> 
<style> 
    h1 { 
     font-family: cursive; 
    } 
    button { 
     font-family: josefin sans; 
     font-size: 30px; 
     border-radius: 10px; 
     background-color: red; 
     color: white; 
    } 
    input { 
     font-family: josefin sans; 
     font-size: 25px; 
    } 

</style> 
<body> 

<input id="txtJob" type="text" name="txtJob"> & <input type="text" id="twoPpl" name="twoPpl"> <br><br> 
<button onclick="myFunction()">Test</button> 

<h1 id="people" name="people" style="float: right;"></h1><br><br><h1 style="float: right;">%</h1><h1 style="float: right;" id="demo"></h1> 

<script> 
    function myFunction() { 
     var jobValue = document.getElementById('txtJob').value 
     var twoPeople = document.getElementById('twoPpl').value 
     var skip = "&nbsp;& "; 
     var newVar = jobValue + skip; 
     var finVar = newVar + twoPeople; 
     var x = document.getElementById("demo") 
     var y = document.getElementById("name"); 
     x.innerHTML = Math.floor((Math.random() * 100) + 1); 
     document.getElementById('people').innerHTML = finVar; 
    } 
</script> 

</body> 
</html> 
+0

ありがとう!今私は、入力がデータが更新されていないので、varに情報を格納していないことがわかります。 – GoGode

0

未定義は、変数に文字通り値がないことを意味します。つまり、計算が間違っていることを意味します。

名前の代わりにそれぞれを指定する必要があります。それ以外の場合は、.getElementById()は機能しません。