Datatables datatable仅第一次工作 函数搜索用户(url、页面索引){ var表; 表=$('#UsersTable')。数据表({ 服务器端:是的, 检索:对, 阿贾克斯:{ url:url, 类型:“POST”, 数据:{username:$('#username').val(),email:$('#email').val(),companyID:$('#LifeCompanies').val(),page:pageIndex,isLocked:$('#email')。is(':checked')) }, 栏目:[ {“数据”:“用户ID”}, {“数据”:“用户名”}, {“数据”:“电子邮件”}, {“数据”:“IsLockedOut”}, { “呈现”:函数(数据、类型、完整、元){ 返回“wahoo”; } } ] }); } 搜索: @使用(Html.BeginForm(“搜索”、“管理”)) { 用户名: @Html.TextBox(“用户名”) 电邮: @Html.TextBox(“电子邮件”) 锁定: @复选框(“锁定”) @Html.Partial(“SearchBuild”) }

Datatables datatable仅第一次工作 函数搜索用户(url、页面索引){ var表; 表=$('#UsersTable')。数据表({ 服务器端:是的, 检索:对, 阿贾克斯:{ url:url, 类型:“POST”, 数据:{username:$('#username').val(),email:$('#email').val(),companyID:$('#LifeCompanies').val(),page:pageIndex,isLocked:$('#email')。is(':checked')) }, 栏目:[ {“数据”:“用户ID”}, {“数据”:“用户名”}, {“数据”:“电子邮件”}, {“数据”:“IsLockedOut”}, { “呈现”:函数(数据、类型、完整、元){ 返回“wahoo”; } } ] }); } 搜索: @使用(Html.BeginForm(“搜索”、“管理”)) { 用户名: @Html.TextBox(“用户名”) 电邮: @Html.TextBox(“电子邮件”) 锁定: @复选框(“锁定”) @Html.Partial(“SearchBuild”) },datatables,Datatables,您好,上面的代码使用datatables jquery插件 它似乎只在我第一次使用该功能时起作用。第二次,它似乎击中了javascript,但从未从我的mvc控制器检索任何数据 但是,如果我使用destroy而不是retrieve,它的效果非常好 如果不使用检索或销毁,则会出现“无法重新初始化表”错误 该函数只是通过我单击的按钮调用的 您需要修改代码以初始化表并单独重新加载 此外,除非销毁并重新创建表,否则无法通过API修改初始化选项 您需要另一种方法来传递pageIndex变量。例如,您可以创

您好,上面的代码使用datatables jquery插件

它似乎只在我第一次使用该功能时起作用。第二次,它似乎击中了javascript,但从未从我的mvc控制器检索任何数据

但是,如果我使用destroy而不是retrieve,它的效果非常好

如果不使用检索或销毁,则会出现“无法重新初始化表”错误

该函数只是通过我单击的按钮调用的


您需要修改代码以初始化表并单独重新加载

此外,除非销毁并重新创建表,否则无法通过API修改初始化选项

您需要另一种方法来传递
pageIndex
变量。例如,您可以创建id为
PageIndex
的隐藏输入,并从中设置和检索值

例如:

 function SearchUser(url, pageIndex) {

        var table;

            table = $('#UsersTable').DataTable({
                serverSide: true,
                retrieve:true,
                ajax: {
                    url: url,
                    type: "POST",
                    data: { username: $('#Username').val(), email: $('#Email').val(), companyID: $('#LifeCompanies').val(), page: pageIndex, isLocked: $('#Locked').is(':checked') }
                },
                columns: [
                    { "data": "UserId" },
                    { "data": "Username" },
                    { "data": "Email" },
                    { "data": "IsLockedOut" },
                    {
                        "render": function (data, type, full, meta) {
                            return '<span>wahoo</span>';
                        }
                    }
                ]
            });
               }

<div id="search">
    <h3>Search:</h3>
   @using (Html.BeginForm("Search","Admin"))
   {
        <div>

            <table width="500px">
                <thead>
                    <tr>
                        <td>Username:</td>
                        <td>@Html.TextBox("Username")</td>
                    </tr>
                    <tr>
                        <td>Email:</td>
                        <td>@Html.TextBox("Email")</td>
                    </tr>
                    <tr>
                        <td>Locked:</td>
                        <td>@Html.CheckBox("Locked")</td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <div id="searchForm">
                                @Html.Partial("SearchBuild")
                            </div>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2"><input type="button" value="Search" onclick="SearchUser('/UserManagement/admin/Search',0)"/></td>
                    </tr>
                </thead>
            </table>
        </div>
    }
</div>
函数初始化表(url){
var表;
表=$('#UsersTable')。数据表({
服务器端:是的,
检索:对,
阿贾克斯:{
url:url,
类型:“POST”,
数据:{
用户名:$('#用户名').val(),
电子邮件:$('#email').val(),
companyID:$(“#LifeCompanys”).val(),
页码:$('#PageIndex').val(),
isLocked:$(“#已锁定”)。是(“:已选中”)
}
},
栏目:[
{“数据”:“用户ID”},
{“数据”:“用户名”},
{“数据”:“电子邮件”},
{“数据”:“IsLockedOut”},
{
“呈现”:函数(数据、类型、完整、元){
返回“wahoo”;
}
}
]
});
}
要再次搜索,只需调用API方法


如果URL将在搜索之间更改,请改用API方法。

您需要修改代码以初始化表并单独重新加载

此外,除非销毁并重新创建表,否则无法通过API修改初始化选项

您需要另一种方法来传递
pageIndex
变量。例如,您可以创建id为
PageIndex
的隐藏输入,并从中设置和检索值

例如:

 function SearchUser(url, pageIndex) {

        var table;

            table = $('#UsersTable').DataTable({
                serverSide: true,
                retrieve:true,
                ajax: {
                    url: url,
                    type: "POST",
                    data: { username: $('#Username').val(), email: $('#Email').val(), companyID: $('#LifeCompanies').val(), page: pageIndex, isLocked: $('#Locked').is(':checked') }
                },
                columns: [
                    { "data": "UserId" },
                    { "data": "Username" },
                    { "data": "Email" },
                    { "data": "IsLockedOut" },
                    {
                        "render": function (data, type, full, meta) {
                            return '<span>wahoo</span>';
                        }
                    }
                ]
            });
               }

<div id="search">
    <h3>Search:</h3>
   @using (Html.BeginForm("Search","Admin"))
   {
        <div>

            <table width="500px">
                <thead>
                    <tr>
                        <td>Username:</td>
                        <td>@Html.TextBox("Username")</td>
                    </tr>
                    <tr>
                        <td>Email:</td>
                        <td>@Html.TextBox("Email")</td>
                    </tr>
                    <tr>
                        <td>Locked:</td>
                        <td>@Html.CheckBox("Locked")</td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            <div id="searchForm">
                                @Html.Partial("SearchBuild")
                            </div>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2"><input type="button" value="Search" onclick="SearchUser('/UserManagement/admin/Search',0)"/></td>
                    </tr>
                </thead>
            </table>
        </div>
    }
</div>
函数初始化表(url){
var表;
表=$('#UsersTable')。数据表({
服务器端:是的,
检索:对,
阿贾克斯:{
url:url,
类型:“POST”,
数据:{
用户名:$('#用户名').val(),
电子邮件:$('#email').val(),
companyID:$(“#LifeCompanys”).val(),
页码:$('#PageIndex').val(),
isLocked:$(“#已锁定”)。是(“:已选中”)
}
},
栏目:[
{“数据”:“用户ID”},
{“数据”:“用户名”},
{“数据”:“电子邮件”},
{“数据”:“IsLockedOut”},
{
“呈现”:函数(数据、类型、完整、元){
返回“wahoo”;
}
}
]
});
}
要再次搜索,只需调用API方法


如果URL将在搜索之间更改,请使用API方法。

显示您的
文档。就绪
代码以及如何调用函数
SearchUser
?显示您的
文档。就绪
代码以及如何调用函数
SearchUser