我有一个多部分表单,其中数据流是:
这三个选项是预览表单中具有唯一名称的提交按钮。 我的提交数据库过程已完成,但我无法执行取消和编辑。我目前的三种方法是(在控制器内部):
function preview_form_redirect()
{
if ( isset($_POST['submit-form']) ) {
$this->send_to_database();
} else if ( isset($_POST['edit-form']) ) {
// return to form with all answers intact
} else { // CANCEL FORM
redirect('accounts');
}
} // END preview_form_redirect()
我对“编辑”选项的计划是模拟后退按钮,因为我确信数据和DOM将完好无损。
我知道我对这两者的方法并不完美但是我被卡住了,不知道用什么方法来模拟这两者。是否有可能兼容的方法来完成我的设置?
答案 0 :(得分:0)
尝试使用原生js back方法:history.back()
答案 1 :(得分:0)
你必须使用Javascript。 如果您的浏览器不完全支持HTML5历史记录API,则可以使用此库使用html5推送状态或html片段:https://github.com/browserstate/History.js/
当用户点击编辑按钮时,执行以下操作: History.pushState({state:1},“State 1”,“?state = 1”);
并在后退按钮上注册一个事件: History.Adapter.bind(窗口,如 'popstate',函数(){ //从页面中删除可编辑元素 });
希望它有所帮助。