用gridview手动绑定数据在要添加一模板列怎么把模板列放到最后一列
2个回答
展开全部
你参考下这篇我的回答,差不多的
http://zhidao.baidu.com/question/152928463.html#here
前端用JS,
function GetGridViewId()//获取Gridview的ID
{
var id;
var tb = document.getElementsByTagName("table");
for(var i=0;i<tb.length;i++)
{
if(tb[i].id.indexOf("GridView1")!=-1)
{
id = tb[i].id;
break;
}
}
return id;
}
window.onload=function()
{
var tb = document.getElementById(GetGridViewId());//获取Table
for(var i=0;i<tb.rows.length;i++)//循环Table每一行
{
if(tb.rows[i].cells.length<=1)
{
break; //防止分页出现tb.rows[i].cells[1]为空情况
}
var clonetd = tb.rows[i].cells[1].cloneNode(true); //克隆第二列(模板列),即预测值那列
var newtd = tb.rows[i].insertCell();//插入一个新列
newtd.replaceNode(clonetd);//把新列用克隆的第二列置换掉
tb.rows[i].cells[1].style.display="none";//隐藏第二列,即预测值那列
}
}
<asp:GridView ID="GridView1" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btnForecast" runat="server" Text="单件预测" CommandName="Forecast" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="预测值">
<ItemTemplate>
<asp:TextBox ID="txtForecastValue" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
后端你GridView绑定数据源,我就不写了.
这样就可以实现你的功能了,第一列为模板列,然后是自动生成列,最后还是一个模板列
http://zhidao.baidu.com/question/152928463.html#here
前端用JS,
function GetGridViewId()//获取Gridview的ID
{
var id;
var tb = document.getElementsByTagName("table");
for(var i=0;i<tb.length;i++)
{
if(tb[i].id.indexOf("GridView1")!=-1)
{
id = tb[i].id;
break;
}
}
return id;
}
window.onload=function()
{
var tb = document.getElementById(GetGridViewId());//获取Table
for(var i=0;i<tb.rows.length;i++)//循环Table每一行
{
if(tb.rows[i].cells.length<=1)
{
break; //防止分页出现tb.rows[i].cells[1]为空情况
}
var clonetd = tb.rows[i].cells[1].cloneNode(true); //克隆第二列(模板列),即预测值那列
var newtd = tb.rows[i].insertCell();//插入一个新列
newtd.replaceNode(clonetd);//把新列用克隆的第二列置换掉
tb.rows[i].cells[1].style.display="none";//隐藏第二列,即预测值那列
}
}
<asp:GridView ID="GridView1" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btnForecast" runat="server" Text="单件预测" CommandName="Forecast" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="预测值">
<ItemTemplate>
<asp:TextBox ID="txtForecastValue" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
后端你GridView绑定数据源,我就不写了.
这样就可以实现你的功能了,第一列为模板列,然后是自动生成列,最后还是一个模板列
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询