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)}"/>