我在页面上有一个提交按钮,通过ajax调用将数据发送到服务器数据库。提交按钮有一个onclick属性,如下所示:
onClick="if(confirm('Leave Page?')){parent.location='home.php';}"
如果用户在确认消息上单击“确定”,则将其重新路由到home.php,但是应该提交的数据实际上都不会进入数据库。但是,如果用户单击确认消息上的“取消”,它将保留在页面上,并且数据已成功提交到数据库。
有什么方法可以解决这个问题吗?我猜测onclick属性在ajax调用之前激活,如果他们选择OK,则URL重新路由优先于ajax调用以将数据发送到DB。还有其他想法吗?
答案 0 :(得分:2)
您过早地触发“离开页面”对话框。只有在您的ajax调用报告成功后才能激活它