php - 嵌套的 jQuery 代码总是首先返回“未定义”?
问题描述
我.done
在父级中有一个嵌套的 jquery ajax 调用。它可以工作,但是,在调用时总是undefined
在开始时返回getProjectFiles(projectid)
,无论它是否data
为空。
js:
function getProjects() {
//...some typical jquery code
ajaxRequest.done(function(data) {
//...append some stuff to html
$('#mydiv').append('some html stuff' + getProjectFiles(projectid));
}
}
function getProjectFiles(projectid) {
var func = 'getProjectFiles';
var args = [projectid];
var formData = {
'action': func,
'args': args
};
$.ajax({
type: 'post',
url: '../includes/ajax.php',
data: formData,
dataType: 'json'
});
ajaxRequest.done(function(data) {
if(data) {
$.each(data, function(i,v) {
$('div#'+projectid+'.project-box-files').append(v['filename']);
})
}
});
}
php:
//these are in a separate functions.php file
function pdoSelect($sql, $args) {
$pdo = dbConnect();
$stmt = $pdo->prepare($sql);
$stmt->execute($args);
$returnval = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($returnval);
}
function getProjectFiles($someParameters){
//db insert
$sql = 'SELECT blah blah';
$args = array($someArgs);
return pdoSelect($sql, $args);
}
//this one is in ajax.php
$func = $_POST['action'];
$args = $_POST['args'];
call_user_func_array($func, $args);
甚至在填写之前getProjectFiles()
就被“异步调用”了吗?还是我需要某种“回调”格式来调用内部? projectid
getProjectFiles
getProjects
解决方案
推荐阅读
- javascript - 有没有办法通过频繁调用的 API 请求来控制 useEffect 结果?
- java - 使用spring的rest api的速率限制
- vb6 - 旧版 Visual Basic 代码中的隐式 ByRef
- html - 如何在引导行中使水平滚动?(两排)
- javascript - JavaScript 在继续之前等待 AJAX
- python - 如何使用 POST 上传大文件而不将其加载到 RAM 中?
- c# - 是否有处理嵌套字典的简单方法
对象是字符串或另一个字典的类型 ? - php - 我希望 php 将一个变量“执行”成一个字符串
- jquery - 如何将数据库填充的summernote字段显示到页面
- python - 应用聚类算法后尝试使用标签编码器进行逆变换时出现值错误