Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.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 ASP.NET GridView处于编辑模式_Jquery_Asp.net_Gridview_Datatable - Fatal编程技术网

Jquery ASP.NET GridView处于编辑模式

Jquery ASP.NET GridView处于编辑模式,jquery,asp.net,gridview,datatable,Jquery,Asp.net,Gridview,Datatable,我有一个Gridview,它放置两个用于选择和删除特定行的图像图标。网格绑定到jquery数据表,但当我选择图像来选择行时,默认行为是强制回发,这会导致网格丢失数据表设置 知道我如何在点击任一按钮时保留数据表吗 <asp:GridView ID="grdMessageDups" runat="server" DataSourceID="sourceDuplicates" AutoGenerateColumns="false"> <Columns>

我有一个Gridview,它放置两个用于选择和删除特定行的图像图标。网格绑定到jquery数据表,但当我选择图像来选择行时,默认行为是强制回发,这会导致网格丢失数据表设置

知道我如何在点击任一按钮时保留数据表吗

<asp:GridView ID="grdMessageDups" runat="server" DataSourceID="sourceDuplicates"
     AutoGenerateColumns="false"> 
    <Columns>
        <asp:CommandField ShowSelectButton="true" ButtonType="Image"
             SelectImageUrl="~/images/icn_alert_success.png"/>
        <asp:ButtonField ButtonType="Image" 
             ImageUrl="~/images/icn_alert_error.png" />
        <asp:BoundField DataField="MsgDateDetailDuplicatesID" Visible="false" />
        <asp:BoundField  DataField="1" HeaderText="Heading 1" />
        <asp:BoundField  DataField="2" HeaderText="Heading 2" />
        <asp:BoundField  DataField="3" HeaderText="Heading 3" />
     </Columns>
 </asp:GridView>
那么DataTable JQuery的内容是:

                var oTable = $('#grdMessageDetail').dataTable({
                "aLengthMenu": [[10, 25, 50, 100, -1], [10, 25, 50, 100, "ALL"]],
                'asStripClasses': null,
                "iDisplayLength": 10,
                "bJQueryUI": true,
                "bFilter": true,
                "bAutoWidth": false,
                "bProcessing": true,
                "bServerSide": false,
                "sDom": 'RC<"H"lfr>t<"F"ip>',

                //Scrolling .......
                "sScrollY": "250px",
                "sScrollX": "100%",
                "sScrollXInner": "100%",
                "bScrollCollapse": true,
                });
代码隐藏中的代码是:

public static void MakeAccessible(GridView grid)
{
    if (grid.Rows.Count <= 0) return;
    grid.UseAccessibleHeader = true;
    grid.HeaderRow.TableSection = TableRowSection.TableHeader;
    if (grid.ShowFooter)
        grid.FooterRow.TableSection = TableRowSection.TableFooter;
}
protected override void OnPreRender(EventArgs e)
{
    base.OnPreRender(e);
    MakeAccessible(grdMessageDups);
} 

每次网格上发生事件时都需要将其绑定。

选择行所做的是客户端事件java脚本或jQuery在这两种情况下都使用

return false;
如果在java脚本或jQuery中调用了onclick函数

编辑 你可以替换

<asp:ButtonField ButtonType="Image" 
         ImageUrl="~/images/icn_alert_error.png" />
将模板归档,并将图像按钮改为图像按钮,如下所示

 <asp:TemplateField>
      <ItemTemplate>
          <img src="~/images/icn_alert_error.png" />    
       </ItemTemplate>
  </asp:TemplateField>

在所有人的帮助下,最终的解决方案是:

                 <asp:TemplateField>
                     <ItemTemplate>
                       <a href="#" id="selectImage">
                        <img src="images/icn_alert_success.png" /></a>
                      </ItemTemplate>
                  </asp:TemplateField>

因此,现在,我需要为所选行执行获取KeyValue,我们是golden。

绑定到jquery数据表是什么意思?您正在初始化gridview以使其表现为jquery datatable吗?是的-因此我使用代码隐藏构建gridview,然后当加载DOM并且Pre_Init处理完信息时,datatable被添加到网格中。当我点击按钮时,会导致回发。但是,我似乎无法取消调用JQuery函数的操作,因为它会停止默认操作。您是否在$document.readyfunction{//Your script}上调用JQuery datatable初始化脚本;网格是使用标准ASP.NET网格方法填充的,因此我有一个用于图像的CommandField,我想截获这个click事件,然后使用JQuery接管action.buttonfield。单击此按钮后,我想使用JQuery来e.PreventDefaults在该按钮字段上是否编写了JQuery函数?Shekhar-我完全忘记了ItemTemplate的内容:-
                  $('[id$=selectImage]').click(function (evt) {
                  evt.preventDefault();
                 alert("item selected");
                  });