我在与CodeIgniter一起使用jQuery。
比如说,我有一个<table> (也许是员工的)。现在,在上述表的上方,我有一个“添加雇员”按钮。此按钮打开带有jQuery-dialog的<form>。当此表单提交时,它当然会转到服务器端(验证是否有重复的条目),然后将其发送回相应的视图和更新的表中。
我想要做的是显示一个对话框,说明已经成功地添加了一个员工,或者它是一个重复的条目。
我这么做是为了
appname/controller/action?addSuccess=true或
appname/controller/action?addSuccess=false每次我返回到视图,然后在我的页面上,在我的$(document).ready()中,我检查这样的查询字符串,并打开相应的对话框(成功或错误对话框)。我现在的问题是,如果我刷新页面(相同的url),我会再次获得对话框(尽管服务器端没有发生任何事情)。
问题:这种方法足够好吗?有什么好的建议来改善这一点吗?
非常感谢!
发布于 2012-07-04 02:49:39
与其将该信息作为查询参数传递,不如存储该信息代码点燃闪存数据。此数据仅在一次重定向中持久化。下次重新加载页面时,将不会设置数据(因为CI会自动为您删除它),并且不会意外地显示警告。
一些用于重定向视图html的示例代码:(我不做php.)
var shouldDisplayWarning = "<? php code that sets some value based on flash variable ?>";
if (shouldDisplayWarning === "yes") {
displayWarning();
}进一步阅读:guide/libraries/sessions.html (在页面的一半,他们提到了闪存数据)。
https://stackoverflow.com/questions/11321578
复制相似问题