Asp.net 网格视图的客户端编辑将被覆盖
Asp.net client side editing of gridview gets overwritten
我有一个简单的网格视图,里面装满了简单实体的列表
public class Order
{
public int Id { get; set; }
public string Code { get; set; }
public string Description { get; set; }
public int Quantity { get; set; }
}
在Page_Load方法中,我执行以下操作
if (!IsPostBack)
{
this.magrid.DataSource = list;
magrid.DataBind();
}
我的页面是这样定义的
<asp:panel runat="server" ID="MyOrders" Visible="true" Width="900px">
<asp:UpdatePanel runat="server" ID="AjaxPanel">
<ContentTemplate>
<asp:GridView runat="server" ID="magrid" AutoGenerateColumns="False" OnRowDataBound="RowDataBound">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id"/>
<asp:BoundField DataField="Code" HeaderText="Code"/>
<asp:BoundField DataField="Description" HeaderText="Description"/>
<asp:BoundField DataField="Quantity" HeaderText="Quantity"/>
<asp:TemplateField
HeaderText="Action"
ItemStyle-CssClass="gviCnt gviCntProductid"
HeaderStyle-CssClass="gviModifyOrder">
<ItemTemplate>
<asp:LinkButton
OnClientClick='<%# "MettreAZero(" + Eval("Id") + ");" %>'
Visible='true'
Text='Clear' runat="server"
ID="btnRemoveLine"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</asp:panel>
</div>
</form>
和这样的JavaScript函数 {
function MettreAZero(id) {
var table = document.getElementById("magrid");
for (var i = 0, row; row = table.rows[i]; i++) {
var cellid = row.cells[0].innerHTML;
if (cellid == id) {
row.cells[3].innerHTML = "0";
return;
}
}
}
}
</script>
我遇到的问题是,当我单击按钮时,所选行的值更改为零,但随后自动将网格重新加载到其原始值。
我错过了什么?
谢谢
在代码中设置单击事件处理程序:
OnClientClick=<%# "MettreAZero(" + Eval("Id") + ");" %>
应停止回发提交事件,因为您将丢失刚刚修改的状态。 您只需要修改MettreAZero()
即可return false;
。 另一种选择是使用 AJAX。
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 在循环中分配json值时,值被覆盖
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- 谷歌地图固定位置覆盖
- 高亮显示时编辑文本大小和颜色
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 只覆盖箭头键滚动事件
- 将事件聚焦/模糊在可编辑内容的元素上
- JQuery覆盖不更改单选选项
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 编辑HTML表的源数据
- ExtJS网格单元格编辑器,防止焦点松动问题
- 如何在visualstudio中调试web api时编辑javascript文件
- 具有所有样式的文本正在复制到可编辑文本区域
- 可以't使用PHP使用Froala编辑器上传图像URL
- JSON数据应该覆盖JSON模式吗?(通过jdorn/json编辑器使用模式和数据)
- Asp.net 网格视图的客户端编辑将被覆盖
- 如何在不编辑的情况下覆盖插件的几个参数
- 可编辑元素,覆盖不起作用的原始文本(x-Editable)
- 在js中编辑和覆盖本地文件