2014-02-26 44 views
0

我想使用ID按鈕調用myfunc(),我該怎麼做? 我不想只用id來調用這個函數。我需要在腳本中添加什麼代碼?從按鈕ID調用java腳本函數

<html> 

    <head> 
     <script> 
      function myfunc() { 

       var count = 0; 
       var line = 0; 
       var i = 0; 
       var phrase = document.getElementById('phrase').value; 
       var filter = document.getElementById('filter').value; 
       var arr = phrase.split(" ").reverse(); 

       for (i = 0; i < arr.length; i++) { 

        if (arr[i].search(filter) == -1) { 
         if (line % 2 == 0) { 
          document.getElementById('words').innerHTML += " <u><span class='word' style='background:#D8D8D8; border:1px solid black; ' > 
" + arr[i] + "</span></u>"; 
          line++; 
         } else { 
          document.getElementById('words').innerHTML += " <span class='word' style='background:#D8D8D8; border:1px solid black; '> 
" + arr[i] + "</span>"; 
          line++; 
         } 
        } 

        if ((arr[i].search(filter) != -1) && (filter)) { 
         count++; 
        } 

       } 
       document.getElementById('count').innerHTML = count + " word(s) filtered out"; 

      } 
     </script> 
    </head> 

    <body> 
     <h1>Sentence Reverser!</h1> 

     <div>Phrase: 
      <input id="phrase" type="text" size="40" /> 
     </div> 
     <div>Filter: 
      <input id="filter" type="text" size="10" /> 
     </div> 
     <div> 
      <button id="go">Go!</button> 
     </div> 
     <div id="words"></div> 
     <div id="count"></div> 
    </body> 

</html> 

回答

0

您可以添加以下

document.getElementById('go').onclick = myfunc 

元素加載完成之後。實際上,這意味着在元素下面,或者在窗口加載事件的頭部。

+0

在哪裏exacly我需要添加這個? – user3322858

+0

當我添加此行代碼未運行: – user3322858

+0

請參閱更新到答案 – Jamiec

0

要儘可能短,可以在HTML之後添加這個腳本,或文檔加載事件:

go.onclick = myfunc 

但這是遠遠的最佳實踐。更好的做法是一個onclick屬性添加到您的按鈕:

<button id="go" type="button" onclick="myfunc()"> Go! </button> 
+0

我知道這樣,但我需要調用函數只用id。 tnx – user3322858

+0

你的意思是「僅用id」是什麼意思?因爲如果我執行代碼'go',它將簡單地返回按鈕。不執行功能。 – wizulus

+0

document.getElementById('go')。onclick = myfunc; //此行不起作用 – user3322858

0

您可以使用addEventListener()附加window.onload內的特定事件的功能,如下所示。

window.onload = function(){ 
    document.getElementById('go').addEventListener('click', myfunc); 

    function myfunc(){ 
     //your all code be here 
    } 
} 

DEMO