首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

有熟悉asp.net又精通javascript的进来看看这个有关问题

2012-03-04 
有熟悉asp.net又精通javascript的进来看看这个问题我母版页中放一文本框和一按钮,用来做搜索。用鼠标点击按

有熟悉asp.net又精通javascript的进来看看这个问题
我母版页中放一文本框和一按钮,用来做搜索。用鼠标点击按钮是没问题的,会跳转到搜索页;但是如果在文本框中输入内容然后按回车只刷新一下当前页面而已。 
我在母版页中加入了如下代码: 
  function document.onkeydown()  
  {  
  if(event.keyCode==13)  
  {  
  event.keyCode=9;  
  event.returnValue=false;  
  $(" <%=btnSearch.ClientID% >").click(); 
  }  
  } 

这样这个问题解决了。但是又有了其它的问题:在其它应用母版页的页面中,如果存在文本框,那么在文本框中输入内容按回车没有反应,不换行。

[解决办法]
是啊,你忽略了一个很重要的环节,没有考虑如果遇到了多行文本框的情况. 
可以这么考虑,当切仅当文本框为单行文本框时才进行这个设计. 

JScript code
<script>        window.onload=function(){   for(var i=0;i<document.getElementsByTagName("input").length;i++)   {      var thisObj=document.getElementsByTagName("input")[i];      if(thisObj.getAttribute("type")=="text")      {         thisObj.onkeydown=function()         {            if(event.keyCode==13)            {               event.keyCode=9;               event.returnValue=false;               $(" <%=btnSearch.ClientID% >").click();            }         }      }   }}        </script>
[解决办法]
<script type="text/javascript">
var flag = true;
function document.onkeydown()
{
if(flag)

if(event.keyCode==13)
{
event.keyCode=9;
event.returnValue=false;
$('<%=Button1.ClientID %>').click();
}
}
}

function document.onclick()
{
var obj = event.srcElement;
if(obj.type=="textarea")
{
flag = false;
}
else 
{
flag = true;
}
}
</script>

热点排行