我正在将datatables插件与服务器端数据一起使用,并使用AJAX更新表。
我的dataTables设置如下所示:
tblOrders = parameters.table.dataTable( {
"sDom": '<"S"f>t<"E"lp>',
"sAjaxSource": "../file.cfc",
"bServerSide": true,
"sPaginationType": "full_numbers",
"bPaginate": true,
"bRetrieve": true,
"bLengthChange": false,
"bAutoWidth": false,
"aaSorting": [[ 10, "desc" ]],
"aoColumns": [
... columns
],
"fnInitComplete": function(oSettings, json) {
// trying to listen for updates
$(window).on('repaint_orders', function(){
$('.tbl_orders').fnServerData( sSource, aoData, fnCallback, oSettings );
});
},
"fnServerData": function ( sSource, aoData, fnCallback, oSettings ) {
var page = $(oSettings.nTable).closest('div:jqmData(wrapper="true")')
aoData.push(
{ "name": "returnformat", "value": "plain"},
{ "name": "s_status", "value": page.find('input[name="s_status"]').val() },
{ "name": "s_bestellnr", "value": page.find('input[name="s_bestellnr"]').val() },
{ "name": "form_submitted", "value": "dynaTable" }
);
$.ajax({ "dataType": 'json', "type": "POST", "url": sSource, "data": aoData , "success": fnCallback });
}
我有一些用于过滤数据服务器端的自定义字段,我将其与AJAX请求一起推送。问题是,我不知道如何从表外部触发JSON请求。如果用户键入过滤器,则fnServerData将触发并更新表。但是,如果用户在表外选择控件,则我不知道如何触发
fnServerData 函数。
现在,我正在尝试触发一个自定义事件,并在fnInitComplete中进行监听。虽然可以检测到用户在选择自定义过滤条件,但我缺少fnServerData正确触发所需的所有参数。
问题 :
是否可以通过实际dataTables表之外的按钮触发fnServerData?
我想我可以尝试为过滤器添加一个空格,但这并不是一个选择。
感谢您的输入!
题
我前段时间找到了这个脚本(所以我不记得它来自:(和谁归功于它了:’(),但是在这里:
$.fn.dataTableExt.oApi.fnReloadAjax = function (oSettings, sNewSource, fnCallback, bStandingRedraw) {
if (typeof sNewSource != 'undefined' && sNewSource != null) {
oSettings.sAjaxSource = sNewSource;
}
this.oApi._fnProcessingDisplay(oSettings, true);
var that = this;
var iStart = oSettings._iDisplayStart;
var aData = [];
this.oApi._fnServerParams(oSettings, aData);
oSettings.fnServerData(oSettings.sAjaxSource, aData, function (json) {
/* Clear the old information from the table */
that.oApi._fnClearTable(oSettings);
/* Got the data - add it to the table */
var aData = (oSettings.sAjaxDataProp !== "") ?
that.oApi._fnGetObjectDataFn(oSettings.sAjaxDataProp)(json) : json;
for (var i = 0; i < aData.length; i++) {
that.oApi._fnAddData(oSettings, aData[i]);
}
oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
that.fnDraw();
if (typeof bStandingRedraw != 'undefined' && bStandingRedraw === true) {
oSettings._iDisplayStart = iStart;
that.fnDraw(false);
}
that.oApi._fnProcessingDisplay(oSettings, false);
/* Callback user function - for event handlers etc */
if (typeof fnCallback == 'function' && fnCallback != null) {
fnCallback(oSettings);
}
}, oSettings);
}
在 调用数据表初始化函数 之前, 添加该代码。那么您可以像这样调用重载:
$("#userFilter").on("change", function () {
oTable.fnReloadAjax(); // In your case this would be 'tblOrders.fnReloadAjax();'
});
userFilter
是下拉菜单的ID,因此当它更改时,它将重新加载表的数据。我只是添加了此示例,但您可以在任何事件上触发它。
问题内容: 我想知道是否有人可以指出我正确的方向。我有一个带有click事件的asp.net按钮(运行一些服务器端代码)。我想做的是通过ajax和jquery调用此事件。有什么办法吗?如果是这样,我会喜欢一些例子。 提前致谢 问题答案: 这就是jQuery对于ASP.Net开发人员真正的亮点。假设您有这个ASP按钮: 呈现后,您可以查看页面的源,页面上的ID不会是btnAwesome,而是$ ct
我试图更新下载按钮点击数据库列。似乎很容易,但当我点击按钮数据库中的计数器不更新。 我不确定这是否是最佳和正确的方法,但这是我到目前为止所做的。 一个输入字段,用户从API中提取图像 当图像加载有显示按钮下载和用户可以下载它 另外,当用户搜索图像时,我会将搜索的内容保存在数据库中。这是我的控制器函数,用于将图像保存在数据库中的搜索字符串中。这很好用 这是下载时更新按钮单击的功能 视图中的按钮 路线
问题内容: 我正在使用精美的框创建弹出窗口,并使用iframe在其上加载另一个页面。这是我的代码 它成功加载页面并执行相应的操作。但是,它没有关闭弹出窗体,而是在弹出窗口本身内部加载了弹出源窗体。我想在工作完成后关闭弹出窗口,然后返回到从其生成弹出窗口的主菜单页面。如何在弹出窗口的按钮单击上实现此目的。 此致Rangana 问题答案: 拨电至 根据http://fancybox.net/faq 如
问题内容: 似乎是一个简单的问题,但解决其他问题的方法似乎对我没有用。 试图通过单击按钮来触发AJAX请求,但似乎并未触发。 HTML示例 javascript 问题答案: 您拥有的代码在拨弄中工作得很好。初始页面加载后,按钮是否通过AJAX动态呈现? 用 代替
问题内容: 我是Swing的新手。 我要在单击按钮(完成按钮)后更新表格。我认为数据正确,但屏幕无法正常工作。 以下是我程序的说明 选中复选框,然后单击完成按钮 最底层应更改。 没有主 这是我的代码: 问题答案: 而不是这样做… 只需更新现有模型 或简单地 假设您要继续向表中添加新行。如果您要这样做,还可以先清除表,然后再向其中添加新行。 Swing的工作原理是MVC(模型-视图- 控制器 ),该
问题内容: 我正在使用书签功能,其中用户单击jQueryui按钮并将某些信息发送到数据库。但是我没有使用表格,因为没有供用户输入的信息。 我正在从会话数据中提取用户ID,并正在发送URI段(URL的一部分) 使用codeigniter / php。 我试图找出要放在ajax / post函数的数据部分中的内容,因为没有表单/没有输入数据,以及如何处理控制器的“提交”部分。 控制者 模型 的HTML