我在TextBox的TextOnChang里面写的代码,怎么必须按个回车才能起作用,能不能有什么办法不按回车起作用的,求教,给个例子

解决方案 »

  1.   

    可以使用ajax 来解决你的问题添加失去焦点事件
      

  2.   

    TextOnChanger事件,只要文本内容改变了就能触发的啊与回车没有必然联系!
      

  3.   

    .aspx页面代码:<asp:TextBox ID="TextBox1" runat="server" onblur='IsNumber("TextBox1");' AutoPostBack="True" ontextchanged="TextBox1_TextChanged"></asp:TextBox>
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>JS脚本代码:<script type="text/javascript">
            function IsNumber(text)
            {
               __doPostBack(text,'TextChanged');
            }
        </script>.apsx.cs代码:protected void TextBox1_TextChanged(object sender, EventArgs e)
        {
            Label1.Text = "文本框内容改变事件";
        }
      

  4.   

    你应该用
    onkeypress  or onkeydown当然change事件肯定是在回传时才能触发那是个服务端的嘛你不点个啥回传一下,内容变了,谁知道呢
      

  5.   

    这个还是真不行,还是不会触发
    我看了10楼说的,那能不能在客户端的keypress事件里面写点啥,然后把数据发回服务器啊
      

  6.   

    //直接在js中写
    <script language="javascript">
        function EnterTextBox()
        {
             if(event.keyCode == 13 && document.all["TextBox1"].value != "")
             {
                 event.keyCode = 9;
                 event.returnValue = false;
                 document.all["TextBox1"].click();
             }
        }
       
    </script><body onkeypress="return EnterTextBox()">
    //此处TextBox1为页面上TextBox的ID<script language="javascript">
        function EnterTextBox(button)
        {
             if(event.keyCode == 13 && document.all["TextBox1"].value != "")
             {
                 event.keyCode = 9;
                 event.returnValue = false;
                 document.all[button].click();
             }
        }   
    </script>在PageLoad事件里
    TextBox1.Attribute.add("onkeypress","EnterTextBox('Button1')");
      

  7.   

    我那方法是在控件失去焦点里触发,如果想不刷新页面可以用AJAX,这样不就达到你想要的效果了?