我正在尝试存储从JSON Ajax函数检索的数据。当我从ajax函数内部控制台输出数据时,它工作正常,但是当我尝试对data变量执行相同操作时,它就失败了。
我不能正确存储结果数据吗?
function f_find() {
// create my data object from the results
var result = $.ajax({
url : '../scripts/php/users/f_users.php',
type : 'GET',
dataType : "json",
data : {'action':'find'},
success : function(data) {
// this bit works
console.log(data[0]["field01"]);
console.log(data[1]["field01"]);
},
error : function(log) {
console.log(log.message);
}
});
// this shows me that my result is an object
console.log(result);
// this bit fails
console.log(result[0]["field01"]);
console.log(result[1]["field01"]);
}
php如下
<?php
if(isset($_GET['action'])) {
switch($_GET['action']) {
case 'find':
f_find();
break;
default:
echo json_encode();
return;
break;
}
}
function f_find() {
$la_info = array();
$la_info[0]["field01"] = "index 0 field 1";
$la_info[0]["field02"] = "index 0 field 2";
$la_info[1]["field01"] = "index 1 field 1";
$la_info[1]["field02"] = "index 1 field 1";
echo json_encode($la_info);
}
?>
参考方案
Ajax调用异步发生。实际上,“失败”只是在ajax响应之前运行。在控制台中查看,请注意两个失败的console.logs在两个“工作” console.log语句之前将其写入控制台。
同样,除非您将其值存储在全局范围内,否则“数据”变量将仅在该“成功”回调的范围内可访问。 window.data = data;
我想在JavaScript中使用模板变量:我的问题是在javascript代码中使用for循环,for循环之间的所有事情都会重复..但我不想要....下面粘贴了我的代码..有人可以告诉我更好的方法吗这..因为这看起来很丑..这是我的代码: {% block extra_javascript %} <script src="/static/js…
使用JS和PHP更改弹出窗口背景图像 - javascript我有一个JS函数:function zoom(now) { document.getElementById("popup").style.display = "block"; document.getElementById("photos").style.backgroundImage = …
打印二维阵列 - javascript我正在尝试打印子元素。在this example之后。怎么做?。$myarray = array("DO"=>array('IDEAS','BRANDS','CREATIVE','CAMPAIGNS'), "JOCKEY"=>a…
获取JavaScript值到C#字符串 - javascript是否可以在C#中执行类似的操作?该值为“ 10/05/2014”string jsValue = javascript("$('#EstimatedStartDate').val()"); 参考方案 您能否更详细地阐明您要做什么。看来您正在尝试从javascript(客户…
Mongo汇总 - javascript我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …