Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery CRUD与JQGrid一起工作_Jquery_Asp.net_Jqgrid - Fatal编程技术网

Jquery CRUD与JQGrid一起工作

Jquery CRUD与JQGrid一起工作,jquery,asp.net,jqgrid,Jquery,Asp.net,Jqgrid,我试图在JQGrid中实现CRUD。但我有以下问题: -无法单独使用“添加”按钮添加行[仅在内联模式下可能] 即使EditDialogSettings.ReloadAfterSubmit设置为false,删除行也会导致回发 仅删除内联编辑后添加的行。如何删除客户端中的行 我希望在页面加载时绑定网格。之后的所有编辑应仅在客户端进行。表单最终提交后,将处理网格更改 我正在遵循中提供的文档,但我无法实现它 我们非常感谢您在这个问题上提供的任何帮助 更新: 以下是我编写的示例代码: <%@

我试图在JQGrid中实现CRUD。但我有以下问题:

-无法单独使用“添加”按钮添加行[仅在内联模式下可能]

  • 即使EditDialogSettings.ReloadAfterSubmit设置为false,删除行也会导致回发
  • 仅删除内联编辑后添加的行。如何删除客户端中的行
我希望在页面加载时绑定网格。之后的所有编辑应仅在客户端进行。表单最终提交后,将处理网格更改

我正在遵循中提供的文档,但我无法实现它

我们非常感谢您在这个问题上提供的任何帮助


更新: 以下是我编写的示例代码:

<%@ Register Assembly="Trirand.Web" Namespace="Trirand.Web.UI.WebControls" TagPrefix="trirand" %>
<trirand:JQGrid ID="XYZ" runat="server"  Width="700px" showToolBar="true">
<columns>
<trirand:JQGridColumn DataField="AA" HeaderText="AA" Width="20" Editable="true" DataType="local"/>
<trirand:JQGridColumn DataField="BB" HeaderText = "BB" Width ="50" Editable="true" DataType="local" />
<trirand:JQGridColumn DataField="CC" HeaderText ="CC" Width = "20" Editable="true" DataType="local"/>
</columns>
<ClientSideEvents RowDoubleClick ="editRow" />     
<ToolBarSettings ShowInlineAddButton="true" ShowInlineCancelButton="true" ShowDeleteButton="true" />
</trirand:JQGrid>
<script type="text/javascript">
  var LastSelection;
  function editRow(id) {
    if (id) {
      var grid = jQuery("#<%= XYZ.ClientID %>");
      grid.restoreRow(LastSelection);
      grid.editRow(id, true);
      LastSelection = id;
}
}
</Script> 
<%@ Register Assembly="Trirand.Web" Namespace="Trirand.Web.UI.WebControls" TagPrefix="trirand" %>
<trirand:JQGrid ID="XYZ" runat="server"  Width="700px" showToolBar="true">
<columns>
<trirand:JQGridColumn DataField="AA" HeaderText="AA" Width="20" Editable="true" DataType="local"/>
<trirand:JQGridColumn DataField="BB" HeaderText = "BB" Width ="50" Editable="true" DataType="local" />
<trirand:JQGridColumn DataField="CC" HeaderText ="CC" Width = "20" Editable="true" DataType="local"/>
</columns>
<ClientSideEvents RowDoubleClick ="editRow" />     
<ToolBarSettings ShowInlineAddButton="true" ShowInlineCancelButton="true" ShowDeleteButton="true" />
</trirand:JQGrid>
<script type="text/javascript">
  var LastSelection;
  function editRow(id) {
    if (id) {
      var grid = jQuery("#<%= XYZ.ClientID %>");
      grid.restoreRow(LastSelection);
      grid.editRow(id, true);
      LastSelection = id;
}
}
</Script> 

变量选择;
函数editRow(id){
如果(id){
var grid=jQuery(“#”);
grid.restoreRow(上次选择);
grid.editRow(id,true);
LastSelection=id;
}
}
我能够进行内联编辑,在顶部添加一行。但在数据绑定完成后,我无法删除表XYZ上的行。我希望这段代码能给你一个关于这个问题的想法。
谢谢

开始使用jqGrid时有些困难,但到最后我能理解

将属性数据类型更改为“本地”

创建列,有些是如何创建的

jQuery("<GridName>" or this).jqGrid(
  { datatype: "local",
    colNames:['column_title_0','column_title_1','column_title_2'], 
    colModel:[  {name:'column0',index:'column0', editable:false,editoptions:{readonly:true,size:10}},
                {name:'column1',index:'column1', editable:false,editoptions:{readonly:true,size:10}},
                {name:'column2',index:'column2', editable:false,editoptions:{readonly:true,size:10}}],
    viewrecords: true,
    width: 400,
    mType: "POST",
    caption:'JQGrid review',
    height: '50px',
    scroll: 1
  }
);
jQuery(“”或this).jqGrid(
{数据类型:“本地”,
colNames:['column_title_0'、'column_title_1'、'column_title_2'],
colModel:[{name:'column0',index:'column0',editable:false,editoptions:{readonly:true,size:10},
{name:'column1',index:'column1',editable:false,editoptions:{readonly:true,size:10},
{name:'column2',index:'column2',editable:false,editoptions:{readonly:true,size:10}}],
viewrecords:是的,
宽度:400,
mType:“POST”,
标题:'JQGrid review',
高度:'50px',
卷轴:1
}
);
按id获取行

     rowData = $(<Grid name or this for current grid>).jqGrid('getRowData',rowId);
      if(rowData)
      {
        rowData.Property
      }
rowData=$().jqGrid('getRowData',rowId);
如果(行数据)
{
rowData.Property
}
添加行

  $(<grid id> or this).jqGrid('addRowData', <Here.Model.Id>, <object with all properties>);
$(或this).jqGrid('addRowData',);
按Id删除行

  $("<grid id>" or this).jqGrid('delRowData',rowId);
$(“”或this).jqGrid('delRowData',rowId);
当前选定行

  var selRowIndex = $("<grid id>" or this).jqGrid('getGridParam','selrow');
var selRowIndex=$(“”或this).jqGrid('getGridParam','selrow');

我推荐您使用,因为它有很好的示例

以下是我编写的示例代码:

<%@ Register Assembly="Trirand.Web" Namespace="Trirand.Web.UI.WebControls" TagPrefix="trirand" %>
<trirand:JQGrid ID="XYZ" runat="server"  Width="700px" showToolBar="true">
<columns>
<trirand:JQGridColumn DataField="AA" HeaderText="AA" Width="20" Editable="true" DataType="local"/>
<trirand:JQGridColumn DataField="BB" HeaderText = "BB" Width ="50" Editable="true" DataType="local" />
<trirand:JQGridColumn DataField="CC" HeaderText ="CC" Width = "20" Editable="true" DataType="local"/>
</columns>
<ClientSideEvents RowDoubleClick ="editRow" />     
<ToolBarSettings ShowInlineAddButton="true" ShowInlineCancelButton="true" ShowDeleteButton="true" />
</trirand:JQGrid>
<script type="text/javascript">
  var LastSelection;
  function editRow(id) {
    if (id) {
      var grid = jQuery("#<%= XYZ.ClientID %>");
      grid.restoreRow(LastSelection);
      grid.editRow(id, true);
      LastSelection = id;
}
}
</Script> 
<%@ Register Assembly="Trirand.Web" Namespace="Trirand.Web.UI.WebControls" TagPrefix="trirand" %>
<trirand:JQGrid ID="XYZ" runat="server"  Width="700px" showToolBar="true">
<columns>
<trirand:JQGridColumn DataField="AA" HeaderText="AA" Width="20" Editable="true" DataType="local"/>
<trirand:JQGridColumn DataField="BB" HeaderText = "BB" Width ="50" Editable="true" DataType="local" />
<trirand:JQGridColumn DataField="CC" HeaderText ="CC" Width = "20" Editable="true" DataType="local"/>
</columns>
<ClientSideEvents RowDoubleClick ="editRow" />     
<ToolBarSettings ShowInlineAddButton="true" ShowInlineCancelButton="true" ShowDeleteButton="true" />
</trirand:JQGrid>
<script type="text/javascript">
  var LastSelection;
  function editRow(id) {
    if (id) {
      var grid = jQuery("#<%= XYZ.ClientID %>");
      grid.restoreRow(LastSelection);
      grid.editRow(id, true);
      LastSelection = id;
}
}
</Script> 

变量选择;
函数editRow(id){
如果(id){
var grid=jQuery(“#”);
grid.restoreRow(上次选择);
grid.editRow(id,true);
LastSelection=id;
}
}
我能够进行内联编辑,在顶部添加一行。但在数据绑定完成后,我无法删除表XYZ上的行。我希望这段代码能给你一个关于这个问题的想法。
谢谢

你试过他们的支持论坛吗?这不是付费产品吗?非常感谢您的回复。我已经设置了dataType=“local”。但这对我不起作用。我遵循了中所示的演示。我正在使用内联添加方法。所以我可以添加一个新行并删除它。但我无法删除数据绑定后在Jqgrid中获得的行。非常感谢任何简化我的问题的建议。请更新您的问题并具体说明问题所在,并将其作为代码的一部分。有了它,我们就有了一点想法