各位大侠,我想实现在客户端页面上的button ,不是asp:button,触发onclick事件以后,显示gridview,开始的时候gridview是隐藏的,并且gridview没有绑定数据源,显示以后开始绑定数据源,并显示数据

解决方案 »

  1.   

    加上 runat="server"  即可
      

  2.   

    那通过JS控制应该可以吧。
    开始gridview给个display:none;点击button时,再显示出来
      

  3.   

    HTML标签的BUTTON上面加上runat="server" 属性即可实现asp:button标签的功能。
      

  4.   

    显示我知道呀,就是怎么用js控制gridview数据的填充呀,就是开始的时候gridview并没有绑定数据,显示以后才开始绑定数据
      

  5.   

    放在一个服务器按钮button1,设置display="none" onclick事件绑定GridView
    你的按钮执行:
    document.getElementById("<%=button1.ClientID%>").click();
    就行了~
      

  6.   

    楼主 不就是要无刷新数据吗
    用ajax获取数据 构建table 也就不需要gridview了
      

  7.   

    div的隐藏显示
    或AJAX中绑定数据到gridview
    或updatepanel document.getElementById("btN").click()
      

  8.   

    to 人生如梦
    我不想用updatepanel,数据量一大就显示很慢呀
    我想用ajax中绑定数据到gridview,大侠能否给个例子,谢谢
      

  9.   

    哦,to jetwindlee大侠能不能给个例子,呵呵
      

  10.   

    to chuxue1342
    那样做页面有刷新
      

  11.   

    哦,我还要查询gridview里面的信息
      

  12.   

    能不能给个例子呀,怎么控制gridview在页面上的位置呀,我想一点击显示按钮,gridview就会显示在固定的位置,如果查询的时候,页面刷新的时候,gridview是不是又返回到初始位置了 呀
      

  13.   

    用AJAX吧
    GridView的位置,用css设置GridView显示在客户端就是个Table
      

  14.   

    to ihandler谢谢
    能给个例子吗,我用百度查了两天了也没有查到呀
    我不想用微软的updatepanel,那样速度太慢了呀
      

  15.   

    把GridView 放到一个单独的页上,
    然后重写页面的Render方法,控制页面上只有GridView的展现
    在用Ajax的方式请求该页
    这样只是用GridView显示数据,其所有服务器端事件将失效!我这有个类似的例子,把列表换成GridView即可,希望对你有帮助http://www.51aspx.com/CV/AjaxAccessGuestbook/
      

  16.   

    用ajax实现,后台取数据,拼写html 传回页面(jQuery)
    页面:<div id="testDiv"> </div>   //function GetStr()
    {
    $('#testDiv').innerTHML = test.TestStr().value;
    }后台:load事件中注册ajax
    [ajax.AjaxMothed]
    pulic string TestStr()
    {
      DataSet ds = ...//数据集
      string str = "<table border='0'> <tr><td>测试</td></tr>";
      foreach(DataRow dr in ds.table[0].rows)
     {
       str +="<tr><td>"+dr["显示的数据"]+"</td></tr>";
     }
     str +="</table>";
    returen str;
    }
      

  17.   

    GridView无刷新绑定的话应该只能用UpdatePanel吧?楼主可以用AJAX获取后直接输入HTML,也可以页面载入的时候即绑定好数据,设置display="none",点击按钮再显示出来。
      

  18.   

    ajax提数据,还用啥gridview呢,直接打table,更高效
      

  19.   

    ajaxprohttp://blog.csdn.net/wwfgu00ing/archive/2010/07/08/5721175.aspx
      

  20.   

    用ajax实现,后台取数据,拼写html 传回页面(jQuery)
    页面:<div id="testDiv"> </div> //function GetStr()
    {
    $('#testDiv')html(test.TestStr().value);
    }后台:load事件中注册ajax
    [ajax.AjaxMothed]
    pulic string TestStr()
    {
      DataSet ds = ...//数据集
      string str = "<table border='0'> <tr><td>测试</td></tr>";
      foreach(DataRow dr in ds.table[0].rows)
     {
      str +="<tr><td>"+dr["显示的数据"]+"</td></tr>";
     }
     str +="</table>";
    returen str;
    }
      

  21.   

    同意22楼的。页面载入时绑定数据。display="none" 点击后再显示。如果你想的是点击后再读数据 再显示。还不是要刷新页面。
      

  22.   


    不过是调后台方法而已<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>无标题页</title>
        <script type="text/javascript">
           function btnInvoke_onclick() 
           {
           //PageMethods  调用页面方法代理时统一的前缀为PageMethods
            //即语法为:
          //PageMethods.[MethodName](param1, param2,..., callbackFunction);
              PageMethods.SayHelloFromPage("click me !", onSayHelloSucceeded); 
          } 
          function onSayHelloSucceeded(result) { 
            alert(result+"成功了");
          }
          
          //还可以用另一种调用方式  AjaxPro
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <!--ScriptManager 的 EnablePageMethods="true" 不可缺少 -->
        <asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server">
        </asp:ScriptManager>
        <button id="f" onclick="btnInvoke_onclick();">me click</button>
        </form>
    </body>
    </html>//后台方法
        [WebMethod]
        public static string SayHelloFromPage(string name)
        {
            return string.Format("Hello {0}!", name);
        }
      

  23.   

    顶  ajax   楼主可以看看 使用jquery ajax   http://blog.csdn.net/shellwin/archive/2010/06/08/5656732.aspx
      

  24.   

    JS代码:导过JQUERY包
    <script type="text/javascript">
            $(function() {
                $('#Button1').click(function() {
                     $('#GridView1').show();
                     $('#Hidden1').val("aaa");
                     form1.submit();
                });
            })
        </script>HTML代码:<form id="form1" name="form1">
    <input id="Hidden1" name="Hidden1" type="hidden" />
    <input id="Button1" type="button" value="button" />
    <asp:GridView ID="GridView1" runat="server" style="display:none;">
    </asp:GridView>
    </form>
      protected void Page_Load(object sender, EventArgs e)
      {
            if (!string.IsNullOrEmpty(Request.Params["Hidden1"]))
            {
                if (Request.Params["hidLogOut"].ToString() == "aaa")
                {
                     BindGirdDate();   //绑定girdview数据方法
                }
            }
      }