Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
Javascript 使用asp.net webMethod的jquery datatables服务器端ajax_Javascript_Jquery_Asp.net_Ajax_Datatable - Fatal编程技术网

Javascript 使用asp.net webMethod的jquery datatables服务器端ajax

Javascript 使用asp.net webMethod的jquery datatables服务器端ajax,javascript,jquery,asp.net,ajax,datatable,Javascript,Jquery,Asp.net,Ajax,Datatable,我在ASP.net非MVC项目中使用jquery Datatables 1.10.13,其中GridBooksList是一个DataTable,通过Ajax调用请求GetBooks方法 通过使用Datatables服务器端Ajax调用调用GetBooks方法并没有成功。获取错误: 表id=GridBooksList-为第“0”行第1列请求的未知参数“1” 以下是我正在使用的代码: PageLibrary.aspx PageLibrary.aspx.cs 您的问题可能在于您在“此处的sql查询”中

我在ASP.net非MVC项目中使用jquery Datatables 1.10.13,其中GridBooksList是一个DataTable,通过Ajax调用请求GetBooks方法

通过使用Datatables服务器端Ajax调用调用GetBooks方法并没有成功。获取错误:

表id=GridBooksList-为第“0”行第1列请求的未知参数“1”

以下是我正在使用的代码:

PageLibrary.aspx

PageLibrary.aspx.cs


您的问题可能在于您在“此处的sql查询”中省略的sql。您能提供实际使用的sql查询吗?sql查询没有问题,因为它在booklist中返回数据。我们通过放置断点看到。。sql查询是SELECT name,serial,author from table_books。为客户端控制台以及您的C IDE(我猜是VIsual Studio)启用中断异常可能是值得的?通过这种方式,您可以看到导致错误的原因以及可能的解决方法。问题是Ajax调用没有命中C中的GetBooks方法。SQL查询工作正常,我通过调用第_Load页上的GetBooks方法进行了检查。在开发人员工具的console/network选项卡中,您是否看到对WebMethod的请求?
<table id="GridBooksList" class="table table-bordered" style="text-align: center; width: 100%">
<thead style="background-color: #336699; color: white;">
    <tr>
        <th style="width:20%;">
            <asp:Label ID="lblName" runat="server" Text="Name"></asp:Label>
        </th>
        <th style="width:10%;">
            <asp:Label ID="lblIdentityNo" runat="server" Text="Serial No."></asp:Label>
        </th>
        <th style="width:10%;">
            <asp:Label ID="lblNationality" runat="server" Text="Author"></asp:Label>
        </th>
    </tr>
</thead>
<tbody id="table-tbody">
</tbody>
<script>
try{
$('#GridBooksList').DataTable({
        "bServerSide": true,
        "bProcessing": true,
        "sAjaxSource": "PageLibrary.aspx/GetBooks",
        "data": "{'FromDate':'" + fromdate + "','ToDate':'" + todate + "'}",
        "aoColumns": [
                       { "sName": "NAME" },
                       { "sName": "SERIAL_NUMBER"},
                       { "sName": "AUTHOR" }
        ]
        });
}catch(ee)
{
//getting error here//
//table id=GridBooksList - Requested unknown parameter '1' for row '0', column1
}
</script>
//Model Class //
public class BookDetail
{
    public string NAME { get; set; }
    public string SERIAL_NUMBER { get; set; }
    public string AUTHOR { get; set; }
}

[WebMethod]
    public static string GetBooks(string FromDate, string ToDate)
    {
        try
        {
            // getting data from database server here //
            List<BookDetail> booklist = ENT.Database.SqlQuery<BookDetail>('sql query here').ToList();
            JavaScriptSerializer JavaScriptSerializer = new JavaScriptSerializer();
            return JavaScriptSerializer.Serialize(booklist); 
        }
        catch
        {
            return null;
        }
    }