我有两个标签,如FixedTotal和TotalPercent,一个GridView,有一行,如
ReferenceID Percentage Amount
-------------- ------------- --------
1 5 1000
这里我想用TotalPercent标签的文本更改“Percentage”列值5。 我想在FixedTotal标签中显示“金额”列值1000。 我还想检查网格是否有行?这该怎么做? 列是BoundField列..
答案 0 :(得分:3)
Getting/Setting
值,你需要知道Gridview的Row Index
,当你从gridview调用JS函数时可以pass row index
<script language="javascript" type="text/javascript">
function update(rowIndexOfGridview) {
var ri = rowIndexOfGridview;
var grd = document.getElementById('<%= GridView1.ClientID %>');
CellValue = grd.rows[ri].cells[1].childNodes[0].value; // get
grd.rows[ri].cells[2].childNodes[0].value = CellValue; assign
...........
.............
}
答案 1 :(得分:2)
<script language="javascript" type="text/javascript">
function Calculate()
<br/>
{
<br/>
var grid = document.getElementById("<%=GridID.ClientID%>");
<br/>
var sum = 0; <br/>
for (var i = 1; i < grid.rows.length; i++)<br/>
{ <br/>
var Cell = grid.rows[i].getElementsByTagName("input");
<br/>if (!Cell[4].value) {sum += 0; } else { sum += parseFloat(Cell[4].value);} }
<br/>
document.getElementById("<%=TextBox1.ClientID%>").value = sum;
}
<br/>
</script>
------------------------------------------------------------------------
<asp:TemplateField HeaderText="Current payment" >
<ItemTemplate>
<asp:TextBox ID="cridnvalue" runat="server" Width="70px" BorderStyle="None" onkeyup="CalculateTax();" ></asp:TextBox>
</ItemTemplate>
<ItemStyle Width="120px" />
</asp:TemplateField>
答案 2 :(得分:0)
您可以尝试这个。我已经用过了,没有错误。
<script language="javascript" type="text/javascript">
function update(rowIndexOfGridview) {
var ri = rowIndexOfGridview;
var grd = document.getElementById('<%= GridView1.ClientID %>');
var CellValue = grd.rows[ri].cells[1].childNodes[0].textContent); // get
grd.rows[ri].cells[2].childNodes[0].textContent = CellValue; //assign
}
</script>