首先需要让这两个页面之间建立有关系,也就是需要在一个页面中打开另外一个页面,可以参考以下代码:
主窗口代码:
var features = {channelmode: 1,
fullscreen: 1,
location: 0,
menubar: 0,
scrollbars: 0,
status: 0,
titlebar: 0,
toolbar: 0,
resizable: 1
}
var previewWin = window.open("preview.html", "展示", features, true)
在主窗口中可以通过previewWin对象来调用子窗口中的代码。
在子窗口中可以通过opener对象来访问主窗口中的代码,这样主从窗口之间就建立关系了,如果你需要在主窗口中改变子窗口中的背景可以这样做:
首先在子窗口中定义一个改变窗口背景的函数,比如 changeBg(),然后在主窗口中通过previewWin对象调用,previewWin.changeBg()即可。
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取数据。
实现前端和后端的参数传递,其实就是前端(页面)向服务器发起一个请求,在请求中附带了一些我们需要的参数。当服务器端接收到这个请求后,通过解析得要我们要传递的参数,这要就达到了我们的目的了。
举两个例子
java我们可以通过:
request.getParameter("xxxx")//xxxx表示参数名称来获取请求参数名称C#我们可以通过:
GET请求参数用 Request.QueryString,获取POST请求参数用Request.Form
下面讲下POST和GET请求的主要区别:
1、GET请求的数据会附在URL之后(就是 把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连。POST把提交的数据则放置在是HTTP包的包体中。
2、GET方式提交的数据最多只能是1024字节,理论上POST没有限制。
3、POST的安全性要比GET的安全性高。安全的含义是真正的Security的含义,比如:通过GET提交数据,用户名和密码将明文出现在URL上,因为(1)登录页面有可能被浏览器缓存,(2)其他人查看浏览器的历史纪录,那么 别人就可以拿到你的账号和密码了。