2012-01-31 69 views
2

所以,我有一個文本框用作iframe的地址欄。那麼在此之前,我需要使用此腳本「GO」按鈕:使ENTER鍵提交url表格iframe

<script language="javascript"> 
    function LoadPage(){ 
    var objFrame=document.getElementById("myIframe"); 
    objFrame.src=document.getElementById("URL").value; 
    } 
    </script> 

「GO」按鈕的代碼:

<input type="image" src="http://polaris.umuc.edu/~mahearn/images/arrowbutton.png" 
      height="20" width="20" class="frmSubmit" value="Go" onclick="LoadPage()" /> 

我想,當用戶按下「ENTER」鍵來激活代碼,而在文本框中輸入。

這就是我試過的。發生了什麼事情是,沒有按下一個鍵來激活事件,當我點擊文本框時,事件被激活。

​​

回答

1

你可以用一個OnSubmit事件處理程序在文本框周圍放置一個窗體。請確保您在處理程序結束時返回false以防止它實際提交表單。

+0

我試過一個代碼,但它沒有奏效。你能給我一個代碼嗎? – PrplNinja 2012-01-31 21:25:35

+0

你嘗試了什麼? – Matthew 2012-01-31 21:48:34

0

下面的腳本應該適合你。在每個按鍵上按鍵在if語句中進行評估。如果輸入被按下,則LoadPage被調用,而不是其他任何其他鍵。我修改了Loadpage,僅僅是一個示例購買的警報,你可以讓它做任何你想做的事情。工作jsfiddle:http://jsfiddle.net/zBD8V/

<script language="javascript"> 
    function LoadPage() { 
     alert('LoadPage() would execute here'); 
    } 

    function DetectEnterPressed(e) { 
     var characterCode 
     if (e && e.which) { // NN4 specific code 
      e = e 
      characterCode = e.which 
     } 
     else { 
      e = event 
      characterCode = e.keyCode // IE specific code 
     } 
     if (characterCode == 13) return true // Enter key is 13 
     else return false 
    } 
    </script> 
<input type="text" value="http://" class="frmUrlVal" id="URL1" onkeypress="if(DetectEnterPressed(event)){LoadPage(1)}"/>