目标:我所追求的是每次在数据库中添加某些内容时(在 $.ajax 到 submit_to_db.php 之后)从数据库中获取数据并刷新 main.php(通过 draw_polygon 更明显)。
所以基本上我有一个main.php,它将ajax调用另一个php来接收一个将保存到数据库的数组,而一个json调用另一个php来返回一个数组将被main.php使用。
$(document).ready(function() {
get_from_db();
$('#button_cancel').click(function(){
$.ajax({
url: 'submit_to_db.php',
type: 'POST',
data: {list_item: selected_from_list},
success: function(result){
...
get_from_db();
}
});
});
function get_from_db(){
$.getJSON('get_from_db.php', function(data) {
...
draw_polygon(data);
});
}
});
就我而言,我所做的是get_from_db
调用函数getJSON
来实际从数据库中获取数据,并将数据用于draw_polygon
. 但这是应该怎么做的吗?我是一个完整的新手,getJSON
老实说,这也是我第一次尝试使用 ajax。所以我的问题是:异步实际上是如何工作的?是否有另一种解决方法,而不是必须调用函数get_from_db
(getJSON
它不是同步的,是吗?这就是为什么当页面不在函数中时它不更新页面?)一直 -就像$.ajax
(async: false
顺便说一句,我无法让它工作)。我的方法很有效,但我想也许还有其他更好的方法可以做到这一点。我很想学习如何。提前致谢。我希望我有任何意义。
为了更清楚,这就是我想要实现的目标:
@start
页,从数据库中获取数据(当前通过getJSON
)canvas
使用_data
- 当我单击完成按钮时,它将更新数据库
- 我想再次自动获取数据以重新绘制画布中的更改。