2

所以,我有一个文本框,用作 iframe 的地址栏。好吧,在此之前,我需要一个带有此脚本的“GO”按钮:

<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”时激活该代码。

这是我尝试过的。发生的事情是,当我单击文本框时,事件被激活,而不是按下激活事件的键。

input type="text" value="http://" class="frmUrlVal" id="URL1" onkeypress="return (LoadPage(1))"/>
4

2 回答 2

1

OnSubmit您可以使用事件处理程序在文本框周围放置一个表单。确保false在处理程序结束时返回以防止它实际提交表单。

于 2012-01-31T21:21:56.260 回答
0

下面的脚本应该适合你。每次按键时,都会在 if 语句中评估该键。如果 Enter 被按下 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)}"/>
于 2012-02-14T08:53:42.500 回答