2013-07-01 161 views
-1

我寫了一些簡單的javascript來根據字段的輸入更改iframe的內容。經過幾個小時的嘗試,我已經設法讓它工作。但是我並不真正理解爲什麼我應該在搜索功能結束時將「返回true」和「返回false」。先謝謝你!這是爲什麼這個工作?

function search(){ 
    var course=document.getElementById("field"); 
    if(course.value!=""){ 
     if(course.value!="Course code (e.g. COMP1004)"){ 
      var target=document.getElementById("frame"); 
      target.src=course.value + ".php"; 
      return false; 
     } 
    }else{ 
     return true; 
    } 
} 
<input id="field" name="field" type="text"></input> 
<input id="searchButton" name="searchButton" type="button"value="Search"onclick="search()"></input> 
+0

'return's在你當前的代碼中沒有做任何事 – Ian

+3

你確定你沒有綁定到提交元素的函數嗎? –

回答

2

你並不真的需要,因爲你不期望任何值調用該函數。即使你寫onclick = return search()你也沒有默認的動作來防止,因爲你的輸入有type="button"

+0

你是對的!感謝名單! (Grassie veccio!) – PptSbzzgt

0

當你使用onclick(取決於瀏覽器)觸發javascript函數時,點擊的實際功能可以通過返回false 。因此,如果您點擊某個按鈕並返回true(或不顯示任何內容),則會觸發實際點擊,例如加載一個新頁面。如果你返回false,那麼按鈕的原始功能將不會被調用...