2013-06-01 10 views
5

特定のdivのinnerHTMLを修正しようとしていますが、その内容を消去することができません。div私は次のコードを持っています:divのinnerHTMLを変更できません

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Test</title> 
     <meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
    </head> 
    <body> 
     <script type="text/javascript"> 
      function reset() { 
       document.getElementById("results").innerHTML = ""; 
      } 
      function check() { 
       document.getElementById("results").innerHTML = "foo"; 
      } 
     </script> 
     <form name="form1"> 
      <input type="button" value="Check" onclick="check();"> 
      <input type="button" value="Reset" onclick="reset();"> 
     </form> 
     <div id="results"></div> 
    </body> 
</html> 

誰かが間違っていると指摘できますか?

ありがとうございます。

+0

あなたのコンソール内の任意のjavascriptのエラーを得ているを与えるでしょうか? –

+0

getElementByIdの代わりに '$( 'div#id_name')'を使用するよう慣れてください。 jQeuryプラグインを追加するだけです。 Jsをもっと使う時には、将来的には大いに役立ちます。 – MaNKuR

+3

@MaNKuRすべてのサイトでjQueryをインポートできないことは間違いありません。結局、それほど明るくない。 –

答えて

8

これは、すでにresetという関数がフォームにあり、この関数が独自の関数ではなく呼び出されたためです。その名前を変更すれば動作します。

<script type="text/javascript"> 
     function r2() { 
      document.getElementById("results").innerHTML = ""; 
     } 
     function check() { 
      document.getElementById("results").innerHTML = "foo"; 
     } 
    </script> 
    <form name="form1"> 
     <input type="button" value="Check" onclick="check();"> 
     <input type="button" value="Reset" onclick="r2();"> 
    </form> 
    <div id="results"></div> 

Demonstration

この種の問題は、インライン関数呼び出しを避けるために、もう一つの理由です。好ましい方法は、

<form name="form1"> 
     <input type="button" value="Check" id=check> 
     <input type="button" value="Reset" id=reset> 
</form> 
<div id="results"></div> 
<script type="text/javascript"> 
     document.getElementById("reset").onclick = function() { 
      document.getElementById("results").innerHTML = ""; 
     } 
     document.getElementById("check").onclick = function(){ 
      document.getElementById("results").innerHTML = "foo"; 
     } 
</script> 
+1

これは(this)/ withclickメソッド*/'と(with this) –

2

onclick="window.reset();" 
関連する問題