gpt4 book ai didi

javascript - 与从 Famo.us 中的 AJAX 调用获取值(value)相关的问题

转载 作者:行者123 更新时间:2023-12-03 12:25:14 25 4
gpt4 key购买 nike

我是 Famo.us 框架的新手。我在 Famo.us 框架中有一个小应用程序。

我有以下代码:

define(function (require, exports, module) {
var Surface = require('famous/core/Surface');
var Modifier = require('famous/core/Modifier');
var Transform = require('famous/core/Transform');
var View = require('famous/core/View');
var HeaderFooterLayout = require('famous/views/HeaderFooterLayout');
var App = require('./App');


var apps = [];

GetContent.prototype = Object.create(View.prototype);
GetContent.prototype.constructor = GetContent;
GetContent.DEFAULT_OPTIONS = {};

function GetContent() {
View.apply(this, arguments);
GetData();
}

function GetData() {
$.ajax({
type: "GET",
url: "/LocalPlatFormService.svc/GetJobRCompanies",
contentType: "application/json; charset=utf-8",
success: ajaxCallSucceed,
dataType: "json"
});
}

function ajaxCallSucceed(response) {
var finalStr = '';
var a = response[0].Success;
if (a.toString().toLowerCase() == "true") {
for (var i = 0; i < response.length; i++) {
var strId = response[i].Id;
var strSuccess = response[i].Success;
finalStr += i + '.' + strId + ' , ' + strSuccess + ' ';

var app1 = new App({});
app1.AddPages(response[i].ImageLarge, response[i].Description, response.length, i);
apps.push(app1);
}
}
else {
alert("No Data Found.");
}
}

module.exports = GetContent;

});

GetData() 中的 Ajax 调用工作正常,并且在成功调用时还会调用 ajaxCallSucceed()。但问题是 ajaxCallSucceed() 在执行所有其他函数之后执行,即使在执行最后一行中的 module.exports = GetContent; 之后也是如此。

我想根据从数据库获取数据来绑定(bind)ajaxCallSucceed()中的一些值但是如何从 ajaxCallSucceed() 获取值,因为它是在所有其他操作之后执行的。

谢谢。

最佳答案

将 ajax 异步设置为 false。像这样:

$.ajax({
type: "GET",
async: false,
url: "/LocalPlatFormService.svc/GetJobRCompanies",
contentType: "application/json; charset=utf-8",
success: ajaxCallSucceed,
dataType: "json"

});

将 async 设置为 false 意味着您正在调用的语句必须在调用函数中的下一个语句之前完成。如果设置 async: true ,则该语句将开始执行,并且无论异步语句是否已完成,都将调用下一条语句。

关于javascript - 与从 Famo.us 中的 AJAX 调用获取值(value)相关的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24242804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com