用cookies就行。在按钮的Click事件中记录,添加到cookies中

解决方案 »

  1.   


    <html>
    <script type="text/javascript">
    var i=0;
    function count()
    {
       i++;
       document.getElementById("count").innerHTML=i;
    }
    </script>
    <body>
    <span id="count"></span>
    <input onclick="count()" type="button" value="count"/>
    </body>
    <html>
      

  2.   

    onload事件里:
    if(!ispostback)
    {
     ViewState["count"]=0;
    }
    按钮点击事件里:
    ViewState["count"] = ViewState["count"]==null?0:(int)ViewState["count"]++;
      

  3.   

    http://topic.csdn.net/t/20050709/13/4133514.html
      

  4.   

    用js就可以了
    <input type="button" id="button1" value="click me" onclick="addref()"/><script type="javascript">
    var ref =0;
    function addref()
    {
      ref++;
      alert(ref);
    }
    </script>
      

  5.   

    代码再稍改一下,楼主要的是这个效果吧,你可以测试下看看效果:<html>
    <script type="text/javascript">
    var i=0;
    function count()
    {
       i++;
       document.getElementById("count").innerHTML=i;
    }
    </script>
    <body>
    <span id="count">0</span>
    <input onclick="count()" type="button" value="count"/>
    </body>
    <html>
      

  6.   

    JS这样实现显然是不行的,如果页面含有服务端控件这样就不行了,也就是说只要发生与服务器的交互,你这个记数就被重置为0了,可以通过下面代码验证,点击记数之后在点击BUTTON2测试.
    <HTML>
    <HEAD>
    <title>WebForm2</title>
    <meta content="True" name="vs_showGrid">
    <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
    <meta content="C#" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <script>
    var i=0;
    function count()
    {
    i=i+1;
    alert(i);
    return;
    }
    </script>
    </HEAD> <BODY>
    <form id="Form1" method="post" runat="server">
    <a href="#" onclick="count();">记数</a> <asp:Button id="Button2" runat="server" Text="Button"></asp:Button>
    </form>
    </BODY>
    </HTML>用JS这样实现不行,如果非要用JS那么要加个__IsPostBack的判断.
      

  7.   

    <html>
    <script type="text/javascript">
    var i=0;
    function count()
    {
       i++;
       document.getElementById("count").innerHTML=i;
    }
    </script>
    <body>
    <span id="count">0</span>
    <input onclick="count()" type="button" value="count"/>
    </body>
    <html>
      

  8.   

    微软的服务器控件偶只偶尔用用,不过,服务器控件里照样可以写js代码,服务器控件最终对应的还是html标签
    比如下面的一个例子
    <script type="text/javascript">
    var i=0; 
    function tt()
    {
    i++;
    document.getElementById("Button2").value=i;
    }
    </script>
    <asp:Button id="Button2" runat="server" onclick="tt()" Text="Button"></asp:Button>这段代码看起来是不是有问题啊.不过你可以去测试下.
      

  9.   

    这么多哈。。学习下。。还是用 viewstate["count"]
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
            {
                ViewState["count"] = 0;
            }
        }
        protected void butcheck_Click(object sender, EventArgs e)
        {
            ViewState["count"] = Convert.ToInt32(ViewState["count"])+1;
            label1.Text=ViewState["count"].ToString();
        }在前台  加入服务器端的按钮button,id为butcheck,还有标签label,id为label1
      

  10.   

    有时候代码要适当地逻辑包装,不要太“裸露”了。
      public int 按钮点击次数
      {
        get{ object ret=ViewState["btn_clicked"]; if(ret==null) return 0; else return (int)ret; }
        set{ ViewState["btn_clicked"]=value;}
      }
    接下来,你可以在按钮的click事件处理中直接写:     按钮点击次数++;就可以了。
      

  11.   

    在你使用“按钮点击次数”的时候,你就应该把它当作一个普通的属性变量使用就可以了。代码中每一个使用到它的地方不要直接接触“裸露”的ViewState。
      

  12.   

    用viewstate不能满足楼主要求.
    楼主要的是刷新后数字归0.
    最好的办法是用js实现.
      

  13.   

    太多了,最好还是使用viewstate + ispostback