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
Php 拉维公司;Datatables:Ajax数据不使用html select中的新Ajax参数刷新表_Php_Jquery_Ajax_Laravel_Datatable - Fatal编程技术网

Php 拉维公司;Datatables:Ajax数据不使用html select中的新Ajax参数刷新表

Php 拉维公司;Datatables:Ajax数据不使用html select中的新Ajax参数刷新表,php,jquery,ajax,laravel,datatable,Php,Jquery,Ajax,Laravel,Datatable,你能帮帮我吗。我正在使用laravel开发一个后端应用程序,其中我使用数据表。情况是,我正在从mailgun检索邮件列表,并希望返回该邮件列表中的用户。我正在使用LaravelBlade中的一个html选择标记,并希望通过将邮件列表作为参数发送到ajax请求来刷新数据表,但什么也没有发生。我回答了这个问题 下面是我的代码 LARAVEL刀片: Mailing List: <select id="mailing-list">

你能帮帮我吗。我正在使用laravel开发一个后端应用程序,其中我使用数据表。情况是,我正在从mailgun检索邮件列表,并希望返回该邮件列表中的用户。我正在使用LaravelBlade中的一个html选择标记,并希望通过将邮件列表作为参数发送到ajax请求来刷新数据表,但什么也没有发生。我回答了这个问题

下面是我的代码

LARAVEL刀片:

Mailing List: <select id="mailing-list">
                                @foreach($lists as $list)
                                       @if($list->address == 'users@sample.com')
                                       <option selected="selected" value="{{$list->address}}">{{$list->address}}</option>
                                       @else
                                       <option value="{{$list->address}}">{{$list->address}}</option>
                                      @endif
                                @endforeach
                            </select>
知道为什么数据表没有用正确的数据刷新吗

$('#table').dataTable().fnDestroy();
$('#table').dataTable( {
            "bDestory": true,
            bRetrieve: true});
BRETRIVE:检索现有DataTables实例
bDestory:销毁与选择器匹配的任何现有表,并替换为新选项

但是在数据表文档中
,它将变成
“destroy”:true,“retrieve”:true
,尝试一下…

尝试将ajax对象中的
data
函数更改为如下内容:

"ajax": {
    url: 'lists/data',
    data: function ( d ) {
            d.mail = mailingListName;
        }
    }
}
(在数据表的网站上查看)


不过,我不知道服务器在“邮件”上需要什么样的数据。另外,请记住datatables将此数据作为GET请求发送。

感谢Sebastianb和fall.lu的回答。我发现了当选择选项发生更改时,为什么不加载数据。而不是把它放在变更事件之外。我应该把它放在里面,然后我得到了邮件列表的正确数据

$('#mailing-list').change(function(){
                             mailingListName = document.getElementById("mailing-list").value;
                             table.ajax.reload();
                        });

我应该把这些参数放在哪里?在change函数中?很抱歉询问。
var table=$('.data\u Tables\u wrapper').DataTable({“bPaginate”:true,“bJQueryUI”:true,“iDisplayLength”:50,“sPaginationType”:“full\u numbers”,“bDestory”:true,bRetrieve:true
与您的问题没有直接关系,但您可以尝试使用package。@linuxartisan我认为我不能使用它,因为我使用的列表来自mailgun api,但感谢您的建议。
$('#mailing-list').change(function(){
                             mailingListName = document.getElementById("mailing-list").value;
                             table.ajax.reload();
                        });