【发布时间】:2017-01-17 21:34:22
【问题描述】:
我有问题。我需要获取由 javascript 更改的 gridview 值。
我的 GV 是:
<asp:GridView ID="GridViewImageList" CssClass="GridView" HeaderStyle-CssClass="GridViewHeader" RowStyle-CssClass="GridViewRow" FooterStyle-CssClass="GridViewFooter" runat="server" AutoGenerateColumns="False" OnRowCancelingEdit="GridViewImageList_RowCancelingEdit" OnRowDeleting="GridViewImageList_RowDeleting" OnRowEditing="GridViewImageList_RowEditing" OnRowUpdating="GridViewImageList_RowUpdating" OnRowDataBound="GridViewImageList_RowDataBound">
<Columns>
<asp:CommandField ShowEditButton="false" />
<asp:CommandField ShowDeleteButton="True" />
<asp:TemplateField HeaderText="Image Name" Visible="false">
<ItemTemplate>
<asp:Label ID="LabelImageName" runat="server" Text='<%# Eval("ImageName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Image">
<ItemTemplate>
<asp:Image ImageUrl='<%# Eval("ImageThumbURL") %>' runat="server" Height="75" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Size">
<ItemTemplate>
<asp:DropDownList ID="DropDownListPhotoSize" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Number of Copy">
<ItemTemplate>
<asp:TextBox ID="TextBoxNumber" runat="server" MaxLength="3" Width="20px" Text='<%# Eval("Number") %>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
通过在下面的文本框中输入: 和js函数:
function updateAllTextbox(obj, item) {
var totalRows = parseInt('<%= GridViewImageList.Rows.Count %>');
var gvAllControl = document.getElementById('<%= GridViewImageList.ClientID %>');
var gvItemControls = "";
var gvHeaderControl = "";
if (item == "number")
{
gvItemControls = "TextBoxNumber";
gvHeaderControl = document.getElementById("textBoxNumberAll");
}
//get an array of input types in the gridview
var inputTypes = gvAllControl.getElementsByTagName("input");
for (var i = 0; i < inputTypes.length; i++) {
//if the input type is a checkbox and the id of it is what we set above
//then check or uncheck according to the main checkbox in the header template
if (inputTypes[i].type == 'text' && inputTypes[i].id.indexOf(gvItemControls, 0) >= 0)
inputTypes[i].value = obj.value;
}
}
我正在更改所有行的 TextBoxNumber 字段的值。
但是当我从 Gridview 读取值时,它没有显示更改的值。请帮忙
【问题讨论】:
标签: javascript c# asp.net gridview