包含数据的 Init 表仅适用于断点
Init table with data works only with breakpoint
我用我使用 ajax 获得的数据初始化表(使用这个 lib 引导表)。
var arr = [];
var getRows = function () {
$.ajax({
type: "GET",
url: hostUrl,
contentType: "application/json;",
dataType: "json",
success: function (result) {
arr = result.d;
}
});
return arr; // breakpoint here
};
$('#bootstrap-table').bootstrapTable({
data: getRows()
});
仅当我在 getRows 函数中设置返回断点时,此代码才有效。尝试在返回之前添加超时 - 但这没有帮助。
如果我不添加断点,我什么也得不到。
ajax 调用是异步的。
在呼叫返回之前返回 arr。
你最好选择这样的东西:
$.ajax({
type: "GET",
url: hostUrl,
contentType: "application/json;",
dataType: "json",
success: function (result) {
$('#bootstrap-table').bootstrapTable({
data: result.d
});
}
});
查询
中缺少异步参数
$.ajax({
type: "GET",
url: hostUrl,
async: false, //This is the guy you want !!!!!!!!!!!!!
contentType: "application/json;",
dataType: "json",
success: function (result) {
arr = result.d;
}
});
实际上,
你最好使用承诺。只需返回 $.ajax
promise 并处理该函数外部返回的数据:
// GetRows promises to return rows of data...
var getRows = function () {
// simply return the ajax promise
return $.ajax({
type: "GET",
url: hostUrl,
contentType: "application/json;",
dataType: "json",
});
};
并像这样消费:
// Use the returned promise to process the data
getRows().done(function(rows){
$('#bootstrap-table').bootstrapTable({
data: rows
});
});
回调或success:
处理程序的问题在于,您将 GUI 依赖项构建到 GetRows
方法中。
相关文章:
- AddEventListener适用于浏览器,但不适用于Android
- 查找仅适用于原始图像的图像放大算法的名称
- 如何在category.php中执行jquery,这应该适用于类别wordpress中的每个帖子
- Web编程,简单但适用于机器人项目
- JavaScript不适用于internet explorer和Firefox,但适用于谷歌
- Jquery事件处理程序仅适用于匿名函数
- jQuery调整大小函数只适用于窗口
- 火灾在卸载前确认警报仅适用于外部站点
- EmberJS-适用于各种模型的适配器动态名称空间
- Facebook共享链接适用于用户,但不适用于粉丝页面管理员
- jQuery-适用于移动设备的多级菜单
- 循环中的切换脚本只适用于第一次迭代
- 为什么setTimeout适用于无休止的递归调用
- 我未保存的更改指令需要适用于具有不同名称的所有表单
- 适用于多种浏览器的Selenium-需要能够执行javascript的webDriver
- Sails.js/Waterline.add()和.remove()仅适用于第二次调用
- jQuery点击事件仅适用于横向(iPhone)
- .click 函数仅适用于断点
- 包含数据的 Init 表仅适用于断点
- 验证输入的时间只适用于如果我附加了一个断点在chrome调试器