0

我使用了这个讨论中找到的“Chrules”给出的解决方案:没有href、onclick等的按钮

像这样 :

<button id="clickable" >Click Me!!</button>
 ......
$("#clickable").click(function(){
 // Send user to this link
   insertRecord(); //SQLite Code
  location.href = "game.html";
   // location.href = "http://www.takemehere.com"; });

因此,当我像他所说的那样使用 location.href 时(=“ http://www.takemehere.com ”;) insertRecord() 方法成功完成(对象被添加到数据库中)

但是当我使用 location.href = "game.html"; game.html 页面已打开但 insertRecord() 方法未完成我试图放置 game.html 的完整路径但同样的问题仍然存在你有什么想法吗?提前谢谢你

4

1 回答 1

2

我认为insertMethod()调用一些异步函数来进行数据库更新。所以你应该在做任何其他事情之前使用回调。

像这样的东西(我不知道 insertRecord 方法里面是什么);

function insertRecord(callback) {
  // do all sorts of database job
  // when it's finished
  // fire your callback
  callback();
}

insertRecord(function() {
  location.href = "page.html";
});

编辑:在您发表评论后,我看到您已经定义了一个在 sql 之后运行的函数,即loadAndReset(). 因此,只需location.href = "page.html"输入该功能,它就应该可以工作。

于 2012-04-21T09:10:19.357 回答