我用了一个多行文本框和一个Button,都是服务器控件。
在文本框内一按回车就提交了,怎么实现不提交而且能回车换行。
多行文本框用html的话,就不会出现这种情况。
但是我现在必须要用服务器控件,因为文本框还要显示后台的数据,Ajax不太会。有没人知道啊?

解决方案 »

  1.   

    function fnDosomething()
    {
               var evt = event ? event : (window.event ? window.event : null);
               var el;var theEvent
               var browser=IsBrowser();
               if(browser=="IE")
               {
                 el = window.event.srcElement;
                 theEvent = window.event;
               }
               else
               {
                 el=evt.target;
                 theEvent = evt;
               }
                if( el.id!= "你text控件的ID" )
                {
                   return;
                }
                else
                {
                var code = theEvent.keyCode || theEvent.which;
                if (code == 13)
                {
                    //你要执行的函数;
                    evt.returnValue=false;
                    evt.cancel = true;

                }
            }
    }    function IsBrowser()
        {
            var isBrowser ;
            if(window.ActiveXObject){
            isBrowser = "IE";
            }else if(window.XMLHttpRequest){
            isBrowser = "FireFox";
            }
            return isBrowser;
        }红色字体就是防止提交。如果你不要回车执行函数的话。function fnDont(){
    if (code == 13)
        {
    evt.returnValue=false;
           evt.cancel = true;

         }
    }
    onload执行上面代码就行
      

  2.   

    好像不行啊。evt.returnValue=false;
    evt.cancel = true;

    这2行是啥意思啊。