1.在前台可见,在后台和脚本中获取值
(1)
<asp:TemplateColumn HeaderText="预警公式">
<HeaderStyle Wrap="False" Width="210px"></HeaderStyle>
<ItemStyle Wrap="False" Width="210px"></ItemStyle>
<ItemTemplate>
<asp:Label id="lblYwsm" Width="210px" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.YWSM") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
(2)后台
string ywsm = ((Label)(this.gridMain.Items[gridIndex].Controls[0].FindControl("lblYwsm"))).Text.Trim();
(3)脚本
var ywsm=document.all("gridMain__ctl"+(gridIndex+2)+"_lblYwsm").innerHTML;
2.在前台不可见,在后台获取其值
(1)
<asp:TemplateColumn Visible="False" HeaderText="流水号">
<HeaderStyle Wrap="False" Width="30px"></HeaderStyle>
<ItemStyle Wrap="False" Width="30px"></ItemStyle>
<ItemTemplate>
<asp:Label runat="server" id="lblLsh" Text='<%# DataBinder.Eval(Container, "DataItem.LSH") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
(2)后台
int lsh=Convert.ToInt32(((Label)(this.gridMain.Items[i].Controls[0].FindControl("lblLsh"))).Text.Trim());
3.在前台不可见,在脚本中获取其值
方法一:
(1)
<asp:datagrid id="gridMain" runat="server" Width="1200px" CssClass="Grid" PageSize="15" AllowPaging="True" Font-Names="宋体" AutoGenerateColumns="False">
<SelectedItemStyle Wrap="False" CssClass="GridSelectedItem"></SelectedItemStyle>
<EditItemStyle Wrap="False" CssClass="GridEditItem"></EditItemStyle>
<AlternatingItemStyle Wrap="False" CssClass="GridAlternatingItem"></AlternatingItemStyle>
<ItemStyle Wrap="False" CssClass="GridItem"></ItemStyle>
<HeaderStyle Wrap="False" HorizontalAlign="Left" CssClass="GridHeader" VerticalAlign="Middle"></HeaderStyle>
<Columns>
<asp:ButtonColumn Visible="False" Text="Select" CommandName="Select"></asp:ButtonColumn>
<asp:TemplateColumn>
<HeaderStyle Wrap="False" Width="30px"></HeaderStyle>
<ItemStyle Wrap="False" Width="30px"></ItemStyle>
<ItemTemplate>
<asp:CheckBox id="ckbSele" runat="server" Width="15px"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn Visible="False" HeaderText="流水号">
<HeaderStyle Wrap="False" Width="30px"></HeaderStyle>
<ItemStyle Wrap="False" Width="30px"></ItemStyle>
<ItemTemplate>
<asp:Label runat="server" id="lblLsh" Text='<%# DataBinder.Eval(Container, "DataItem.LSH") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="预警指标编号">
<HeaderStyle Wrap="False" Width="80px"></HeaderStyle>
<ItemStyle Wrap="False" Width="80px"></ItemStyle>
<ItemTemplate>
<asp:Label id="lblZbbh" Width="80px" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.ZBBH") %>' lsh='<%# DataBinder.Eval(Container, "DataItem.LSH") %>' reply='<%# DataBinder.Eval(Container, "DataItem.REPLYCONTENT") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Visible="False"></PagerStyle>
</asp:datagrid>
(2)脚本
var obj = document.all("gridMain");
var lsh = obj.rows[checkedRowCount].cells[1].children[0].lsh;
var replyCont = obj.rows[checkedRowCount].cells[1].children[0].reply;
其中1为Datagrid中显示列的列次,从0开始计数
方法二:
(1)前台
<asp:datagrid id="gridMain" runat="server" CssClass="Grid" Width="900px" AutoGenerateColumns="False"
SelectedIndex="-1" PageSize="15" AllowPaging="True">
<SelectedItemStyle CssClass="GridSelectedItem"></SelectedItemStyle>
<EditItemStyle CssClass="GridEditItem"></EditItemStyle>
<AlternatingItemStyle CssClass="GridAlternatingItem"></AlternatingItemStyle>
<ItemStyle CssClass="GridItem"></ItemStyle>
<HeaderStyle HorizontalAlign="Left" CssClass="GridHeader" VerticalAlign="Middle"></HeaderStyle>
<Columns>
<asp:ButtonColumn Visible="False" Text="Select" CommandName="Select"></asp:ButtonColumn>
<asp:TemplateColumn HeaderText="未兑付数量" HeaderStyle-Wrap="False" ItemStyle-Wrap="False">
<ItemTemplate>
<asp:Label ID="lblFxmc1" Runat=server text='<%# DataBinder.Eval(Container, "DataItem.fxmc1") %>'>
</asp:Label>
<input id="lblBzbh1" type=hidden value='<%# DataBinder.Eval(Container, "DataItem.QYZT1") %>' runat="server" NAME="lblBzbh1">
<input id="lblBzbh2" type=hidden value='<%# DataBinder.Eval(Container, "DataItem.qyzt2") %>' runat="server" NAME="lblBzbh2">
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Visible="False"></PagerStyle>
</asp:datagrid>
(2)脚本
var vsBzbh1 = document.all("gridMain_ctl"+(i+2)+"_lblBzbh1").value;
var vsBzbh2 = document.all("gridMain_ctl"+(i+2)+"_lblBzbh2").value;
也可在后台获取
string bzbh1 = ((HtmlInputHidden)(this.gridMain.Items[i].Controls[0].FindControl("lblBzbh1"))).Value;
string bzbh2 = ((HtmlInputHidden)(this.gridMain.Items[i].Controls[0].FindControl("lblBzbh2"))).Value;
4.获取Datagrid整行的值
<script language=javascript>
function test()
{
var currentrow=gridMain.rows(2);
if (currentrow!=null)
alert (currentrow.innerText);
}
</script>
5.前台放置一个Textbox
<asp:TemplateColumn HeaderText="预警指标名称">
<HeaderStyle Wrap="False" Width="150px"></HeaderStyle>
<ItemStyle Wrap="False" Width="150px"></ItemStyle>
<ItemTemplate>
<span>
<asp:TextBox AutoPostBack="False" runat="server" ID="txtZbmc" Width="150px" Text='<%# DataBinder.Eval(Container, "DataItem.ZBMC") %>'>
</asp:TextBox>
</span>
</ItemTemplate>
</asp:TemplateColumn>
(1)在后台中获取值:
string zbmc = ((TextBox)(this.gridMain.Items[i].Controls[0].FindControl("txtZbmc"))).Text;
(2)在脚本中获取值
if(i<8)
var zbmc=document.all("gridMain_ctl0"+(i+2)+"_txtZbmc").value;
else
var zbmc=document.all("gridMain_ctl"+(i+2)+"_txtZbmc").value;