1.设置url
// 设置当前urlvar list_url = '/document/order/default.php?page=' + page_nums + '&'+ $("#form1").serialize()var e_list_url = encodeURIComponent(list_url)$("#list_url").val(e_list_url)2.传递url
var list_url = $('#list_url').val()
window.location.href='/document/order/view.php?order_id='+order_id+'&action=edit&handler=admin&list_url='+list_url3.解析url并跳转
var list_url = '<?php echo $list_url?>'
d_list_url = decodeURIComponent(list_url)window.location.href = d_list_url这样就能实现,参数不丢失了。主要就是页码和筛选条件。
纯js页面跳转要传复杂数据不好做,要用localStorage,这个东东在各浏览器中是不一样的。
比较好的方法就是,在跳转链接中加上一些标志参数,如对象ID之类,直接由服务器生成新页面内容或者转到新页面后由页面从服务器重新ajax取数据。
<!DOCTYPE html><html xmlns:th="http://www.w3.org/1999/xhtml">
<head>
<meta charset="UTF-8">
<title th:text="${title}"></title>
<script type="text/javascript" src="/js/jquery_2_1.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.css">
<link rel="stylesheet" href="/lib/editormd/css/editormd.min.css">
<link rel="stylesheet" href="/css/me.css" >
</head>
<style>
</style>
<script>
function save(){
var name = $("#stuname").val()
var age = $("#stuage").val()
var address = $("#stuaddress").val()
$.post("/admin/stu/update", {id:[[${stu.id}]],stuname:name,stuage:age,stuaddress:address
}, function(result) {
if (result.success) {
alert(result.msg)
} else {
alert(result.msg)
}
}, 'json')
}
</script>
<body>
<div>
<a href="/stu/manage">返回</a>
</div>
<table>
<tr><td>用户名</td><td><input th:value="${stu.stuname}" id="stuname" /></td></tr>
<tr><td>年龄</td><td><input th:value="${stu.stuage}" id="stuage" /></td></tr>
<tr><td>地址</td><td><input th:value="${stu.stuaddress}" id="stuaddress" /></td></tr>
</table>
<input type="button" onclick="save()" value="提交修改" />
</body>
</html>