我想在数据库中添加一些信息。如果数据库已经有一些信息,您可能不会添加一些信息。
$(document).on("pagecreate", "#RDpage",function(){
$("#submitR").click(function() {
$.getJSON("http://xxx:8080/getRD", function(data) {
if (data.length == 0) {
// send data to server
$.ajax({
url: "http://xxx:8080/addRD",
type: 'GET',
contenttype:'application/json; charset=utf-8',
data: {
user:user,
RD:"Test"
},
dataType:'JSON'
});
$.mobile.changePage("#dialogAddRD", { transition: "pop", role: "dialog" });
} else {
$.mobile.changePage("#dialogExistingRD", { transition: "pop", role: "dialog" });
}
});
})
});
实际上它有效,但不是重定向。
我点击按钮,它将数据发送到服务器, dialogAddRD显示1秒。我无法点击它。然后我将被重定向回RDpage。
通常,对话框应保持打开状态,然后,我可以单击按钮转到另一个页面
答案 0 :(得分:1)
ajax-function是异步的,将返回一个promise。如jQuery docs中所述,您可以使用它:
$.ajax({
url: "http://xxx:8080/addRD",
type: 'GET',
contenttype:'application/json; charset=utf-8',
data: {
user:user,
RD:"Test"
},
dataType:'JSON'
})
.done(function( data ) {
$.mobile.changePage("#dialogAddRD", { transition: "pop", role: "dialog" });
});