多编辑/保存网格(hiddenfield+javascript)
Multi edit/save grid (hiddenfield + javascript)
我得到了一个包含10行的网格视图,其中1列是可以编辑的组合框。当我点击"编辑"按钮时,所有10行都将变为可编辑行,我想跟踪我更改了哪些行,这样,如果只对其中2行进行了更改,我就不会将所有10行保存到DB中。到目前为止我的难题:
在网格中创建一个额外的隐藏列(就像一个复选框,告诉行已编辑)在组合框上的SelectedIndexChanged上,我将找到一个脚本,该脚本告诉我当前编辑的网格行,并在该行的隐藏列中设置选中标记
然后,当我按下"保存"时,我可以浏览网格的行,看看哪些行有复选标记,然后将这些行保存到DB
Javascript不是我的强项,所以任何帮助/提示都将不胜感激,或者一个完全不同的解决方案也会起作用:)
我的解决方案:添加了<input type="hidden" id="hdnIsChanged" runat="server" />
在网格的ItemTemplate中
然后在RowDataBound的网格中,我找到了hiddenFieldDim hdnField As HtmlInputHidden = DirectCast(e.Row.FindControl("hdnIsChanged"), HtmlInputHidden)
和下拉列表Dim ddlTest As DropDownList = CType(e.Row.FindControl("ddlTest"), DropDownList)
ddlTest.Attributes.Add("onChange", "Test('" + hdnField.ClientID + "');")
<script type="text/javascript">
function Test(hiddenField) {
var test = document.getElementById(hiddenField)
test.value = "1"
}
</script>
最后,我可以浏览网格的行,看看哪些行发生了变化:
For Each r As GridViewRow In gvTest.Rows
Dim hdnField As HtmlInputHidden = DirectCast(r.FindControl("hdnIsChanged"), HtmlInputHidden)
If hdnField.Value = "1" Then
// do updates
End If
Next
- HiddenField从服务器更改的javascript值在客户端确认
- 无法将字符串数组分配给asp:HiddenField
- hiddenfield的值显示得非常缓慢
- 为什么我在尝试使用 StageWebView 在 AIR Android 应用程序中实现 Google Maps Jav
- 在服务器端的javascript之后读取hiddenfield的值
- 如何将这个 Javascript 函数返回放在 HiddenField c# 对象中
- 从 JavaScript 中设置 hiddenfield 值,但不在代码后面获取它
- asp.net hiddenfield.value 不是由 JavaScript 更新的
- Hiddenfield必须在每次点击时进行更改
- 使用 HiddenField 为 Javascript 赋予价值
- 是 var { route, redirect, routeHandler, Link } = router;在 Jav
- ASP.Net在UpdatePanel hiddenField上获取ScriptManager.RegisterClie
- 如何仅针对某些情况(如特定于Internet Explorer的CSS或特定于Internet Explorer的Jav
- Understanding Vertical Movement Method in "Eloquent Jav
- 如何使用javascript或jquery在listview中设置hiddenfield的值
- 使用Javascript更改HiddenField值在C#代码绑定中没有更改
- Tacos AjaxEventSubmit没有't在刷新后为Tapestry Palette组件附加必要的jav
- 多编辑/保存网格(hiddenfield+javascript)
- 在javascript中检索hiddenfield值时出现问题
- 使用c#声明HiddenField'值&Javascript变量