分享

关于GridView的一些用法

 DingYang\(^o^)/ 2009-12-21
 1.JS读写GridView

GridView解析成table
  有时间业务需要利用JS脚本来读写GridView
   var objGridViewTable = document.getElementById("GridViewTable");
        
  var value = objGridViewTable.rows[0].cells[0].children[0].value;
   或者 objGridViewTable.rows[0].cells[0].firstChild.value;
    rows(0)对应Table中的第一个tr,
    cells[0]对应Table中的第一个td
    children[0]对应Table中的第一个子对象
  所以objGridViewTable.rows[0].cells[0].children[0].value 就是得到下面table中的“MyValue”
   <table>
   <tr>
   <td>
    <span>MyValue</span>
   <td>
   <tr>
   <table>

   Repeater解析成tr, 在Repeater外面加上table用法就一样了 
 
2.JavaScript获取GridView选择的行内容
一般GridView第一列是多选框CheckBox,负责标记当前行是否被选中,

后面可以有文本框TextBox,下拉框DropDownList,标签Lable

这些东西的选取首先就要找出选择的是第几行,如下:

var table = document.getElementById("<%=GridView1.ClientID %>");
var rowIndex = 0 ;
for(var i=1;i<table.rows.length;i++)   
{
     var input = table.rows[i].cells[0].getElementsByTagName("input")[0].checked;
      if (input == true)
      {
           rowIndex = i;

           return rowIndex ;
       }
}

取到TextBox中的值

table.rows[rowIndex].cells[3].getElementsByTagName("input")[0].value 

取到Lable中的值

table.rows[rowIndex].cells[4].getElementsByTagName("span")[0].innerHTML

后面的.innerHTML可以换成.innerText,不过.innerHTML的浏览器兼容性好些。

(这里要注意了:不管是用.innerHTML还是.innerText都是只把信息显示<span>XXXX</span>之间,而不是像TextBox的标签显示在<input Value="XXXX"></input>中。缺点是:页面一刷新就没有了。)
 
3ASP.NET中使用javascript获取GridView,获取GridView中CheckBox值,并添加记录
一、javascript获取GridView
<script language ="javascript" type="text/javascript">
    var return_value = new Array();
    function showChild()
    {
       var txt = "";
       var tbl = document.getElementById("<%=dgPermiss.ClientID%>");
       var ID;
      
       if(tbl != null && tbl.rows.length >1)
       {
           for(var i = 1; i < tbl.rows.length; i++) // 遍历行
           {
               ID = tbl.rows[i].cells[3].innerText;//程式代號
               txt += "ID != '" + ID + "' AND ";
           }
          
           if(txt.length >0)
           {
               txt= " WHERE " + txt.substring(0,txt.length -4);
           }
         
       }
       else
       {
           txt= "0";
       }
       showModalDialog("QueryProgram.aspx?ID="+txt,window,"dialogHeight:400px;dialogWidth:450px;center:yes;help:no;status:no;scroll:auto");
    }
}
 二、获取GridView中CheckBox值,并添加记录
protected void Button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            if(((CheckBox)GridView1.Rows[i].Cells[0].Controls[1]).Checked == true && labUser.Text.Length >0) //檢查GridView CheckBox 值
            {
                ObjectDataSource1.InsertParameters["USERID"].DefaultValue = labUser.Text;
                ObjectDataSource1.InsertParameters["PROGRAMID"].DefaultValue = GridView1.Rows[i].Cells[1].Text.ToString().Trim();
                ObjectDataSource1.Insert();
                Session["isZT"] = 0;
            }
        }
    }
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wish366/archive/2007/09/05/1773142.aspx

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多