js之间传值,一定要记得转码。
a.html的页面:
'<a class="layui-btn layui-btn-mini rooms_edit" value="'+roomId+'"><i class="iconfont icon-edit"></i> 编辑</a>'
// 编辑
$(".rooms_edit").click(function(){ //点击
var id= $(".rooms_edit").attr("value");
$.ajax({
type : "post",
asunc : false,
url :" ",
data : { },
success:function(data){
console.log(data.content);
var attr = JSON.stringify(data); // 将post请求获取到的json数据转成字符串
window.location.href = "../../bim/room/roomEdit.html?"+escape(attr);
}
});
});
注释:点击编辑按钮,跳转到./../bim/room/roomEdit.html 页面,并携带数据 escape(attr);
roomEdit.html 页面:
接收a.html页面的数据
function GetRequest() {
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if (url.indexOf("?") != -1) {
var str = url.substr(1);
var strs = str.split("&");
var params = unescape(strs); //params 是json数据
var attr = JSON.parse(params); //
$(".roomName").val(attr.content.name);
}
}
另一种方法简洁一点 location.search.substr(1):取?后面的数据的
function GetRequest() {
var url = location.search.substr(1); //获取url中"?"符后的字串
console.log(url);
var params = unescape(url);
var attr = JSON.parse(params);
$(".roomName").val(attr.content.name);
}
就可以正常传值啦。
属性 attr 的数据 是以下这种形式的;
属性 params 的数据 是以下这种形式的;