From: <asp:TextBox ID = "StartTime" runat="server" onfocus="calendar()"  AutoPostBack="true"></asp:TextBox>
  To: <asp:TextBox ID = "EndTime" runat="server" onfocus="calendar()" 
            ontextchanged="EndTime_TextChanged" AutoPostBack="true" ></asp:TextBox>
两个TextBox通过onfocus给其赋值,但是改变值之后却不能触发ontextchanged事件, AutoPostBack="true"这个属性也设置了,求问为什么?

解决方案 »

  1.   

    onfocus是获取焦点 onpertychange用这个试下
      

  2.   

    这个倒是可以出发,但是clendar()这个函数的值获取不过来啊,怎么办啊?
      

  3.   

    通过js赋值并且让TextBox postBack
      

  4.   

    如果像Windows窗体那样触发的话响应会很慢的。
      

  5.   

    有没有人能帮个忙啊。。明天就要check了
      

  6.   

     你可以把 用html中的文本框 然后加上 runat="server"   在用 就好些
      

  7.   

    把AutoPostBack属性设为FALSE试一下
      

  8.   

    用onchange=calendar()事件试试!AutoPostBack="true" 不用吧。
      

  9.   

    onchange还是不行,我的目的是想通过onfocus给TextBox赋值,然后一旦赋完值后就触发后台的TextChanged的事件,有什么好的解决办法没有?
      

  10.   

    改变的时候就出发   你就用用 onkeydown事件吧
      

  11.   

    我的目的是想通过onfocus给TextBox赋值,然后一旦赋完值后就触发后台的TextChanged的事件,有什么好的解决办法没有?这个是asp的 ,onfocus调用的是js,TextChanged是写在后台的代码
      

  12.   

    onfocus给TextBox赋值完以后 调用后台的那个方法 protected void CsharpVoid()
        {
            string strCC = "www.esoutong.com";
            Response.Write(strCC);    }2.调用方法:CsharpVoid()<script  language="javascript">
    document.write("<%CsharpVoid();%>");
    </script>
      

  13.   

    只有当用户在 TextBox 控件中按 Enter 或 Tab 键时才发生回发。
      

  14.   

    如果你的“改变值之后”是正常的失去焦点的意思,同时你没有使用什么javascript改变其onblur等属性定义,那么就看不出来为什么不能回发了。你写一个尽量简单的demo吧,重现你的问题。
      

  15.   

    我查了一下js修改的脚本不能调用onchange事件,但是可以调用onpropertychange事件,但是这个调用时在我值还没有赋好的情况下进行的,所以还是不行,我把我的问题再描述一下。。<asp:TextBox ID = "EndTime" runat="server" onfocus="calendar()" 
                ontextchanged="EndTime_TextChanged" AutoPostBack="true" > </asp:TextBox> 这个文本框,点上之后会显示一个日历,然后选上日期之后,我想触发这个ontextchanged事件,但是通过js赋值的文本框,ontextchanged是无法捕获的,所以我就不知道该怎么做了
      

  16.   

    你要输入完毕后提交,可以这样
    From:
    <asp:TextBox ID="StartTime" runat="server" onfocus="calendar()"  onblur="this.form.submit();"> </asp:TextBox>
    To:
    <asp:TextBox ID="EndTime" runat="server" onfocus="calendar()"    onblur="this.form.submit();"> </asp:TextBox>
      

  17.   

    例子
    <%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <script runat="server"> 
        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write(StartTime.Text);
            Response.Write(EndTime.Text);
        }
    </script>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript">
            function calendar(o) {
                o.value = (new Date()).toLocaleString();
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        From:
        <asp:TextBox ID="StartTime" runat="server" onfocus="calendar(this)"> </asp:TextBox>
        To:
        <asp:TextBox ID="EndTime" runat="server" onfocus="calendar(this)" onblur="this.form.submit();"> </asp:TextBox>
        </form>
    </body>
    </html>
      

  18.   

    在你Js事件给textbox赋值后加这这一句话:
    this.form1.submit();(form1是form的ID)
      

  19.   

    很简单的问题啊!! 你把 <asp:textbox> 换成 <input type="text" runat=............然后用onpropertychange事件去调函数。