【问题标题】:How to reload page after inserting data in database向数据库中插入数据后如何重新加载页面
【发布时间】:2016-09-28 10:11:27
【问题描述】:

我创建了一个表单,它在数据库中插入一些用户的位置,这些数据应该出现在页面中。问题是我填写表格后页面不会自行重新加载,但我必须重新加载页面。或者如果页面在另一个浏览器中打开,它不会重新加载。在我从这个表单向数据库中插入一些数据后,有没有办法让这个页面自行重新加载而不做任何操作?

【问题讨论】:

  • 您不需要重新加载页面,这就是ajax 的用途。但是,如果您坚持重新加载页面,那么是的,肯定可以做到。你可以使用location.reload()
  • @Andrew 我应该使用什么 ajax 函数来避免重新加载?
  • 整个想法是不重新加载。页面重新加载在视觉上并不吸引人,并且取决于网络连接可能会很慢。不要重新加载,随时随地更新。进行 ajax 调用,返回您需要的任何信息并在不重新加载页面的情况下更新 DOM。
  • @Andrew 有相应代码的答案吗?如果功能,我会投票。
  • 花点时间了解如何做一个 ajax 以及它是如何工作的。理解比盲目复制粘贴要重要得多。 See here, here.

标签: javascript php jquery html


【解决方案1】:

使用 assign() 方法。所有主流浏览器都支持 assign() 方法。

window.location.assign(data); "data being the URL"

window.location.href

function myFunction() {
    location.assign("http://www.example.com");
}
<button onclick="myFunction()">Load new document</button>

好的,谢谢!即使我在这个按钮旁边有一个 ng-click 功能 onClick ?

是的,它仍然可以正常工作。见 JSFiddle demo

编辑:我看到你的代码中有这个?

window.history.back(); or location.reload(); 

考虑替换为:

window.location.replace("pagehere.html");

【讨论】:

  • 数据应该是什么?
  • 你去的网址。
  • 好的,谢谢!即使我在这个按钮旁边有一个 ng-click 的功能 onClick?
【解决方案2】:

您可以在完成操作后使用 jquery as 刷新页面

Javascript 1.0

window.location.href = window.location.pathname + window.location.search +window.location.hash;
// creates a history entry

Javascript 1.1

window.location.replace(window.location.pathname + window.location.search + window.location.hash);
// does not create a history entry

Javascript 1.2

window.location.reload(false); 

【讨论】:

  • #something 可以是按钮的 id 吗?
  • 是的,您可以使用按钮的 id 或编写 document.ready 函数
  • 我试过了。如果我在另一个浏览器中有相同的页面,它仍然具有相同的数据,并且在您重新加载之前不会更新。但我想自己重新加载
  • 如果我想重新加载另一个页面怎么办?所以我有 thgis item #something 可以重新加载另一个页面。如何重新加载另一个页面?
  • 使用 window.location.href="your_another_page_url"
猜你喜欢
  • 2021-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-27
相关资源
最近更新 更多