兩頁面資料傳遞時當資料字串過長怎麼辦?

2021-09-12 04:15:43 字數 1166 閱讀 8440

寫在前面:之前是主要講到了有關load傳遞引數的幾個方式【父子頁面】【url後面】【存放在前端sessionstorage方式】

首先存在乙個問題!首先url後的引數受限於json資料(不能傳遞)

但是問題能暴露肯定有乙個解決的方式,如下所示:我們可以將自己的json進行乙個字串解析,例項如下:

傳遞方:

var data = ;

if($.isnotnull(data))

});

}//解析json成字串

function parseparams(data)

var urlparamsstr = temparr.join('$a_a$');

return urlparamsstr;

} catch (err)

}

接收方:

var jsonstr = $.geturlparam("jsonstr");

var datastr = jsonstr.split("$a_a$");

var htmlstr = "";

for(var i=0;i"+"命令列:||-->>

"+""+com_key+"

"; htmlstr+="獲取值:"+com_value+"

"; }

$(".key_value").html(htmlstr);

這樣的話確實能做到基本資料的處理。

【重點來了】

但是據我所知,url後面的引數所帶的字元的資料是有限的【google (chrome)url最大長度限制為8182個字元】,這樣的話乙個大的資料就會存在問題了。

那麼既然問題來了,終究還是得去面對的,下面可以通過資料儲存的方式來進行處理。

在最外層的頁面定義乙個變數,預設賦值為空串。

window.top.teststr = 「」;

當你本處理json資料後將處理好的string賦值給window.top.teststr.這樣的話在任何的頁面都可以通過window.top.teststr來獲取剛才的json資料,這種方式相對靈活穩定,但是也存在開闢新的記憶體空間去定義變數。這個是目前我使用覺得還不錯的乙個方法。

當然肯定還有說到sessionstorage的方式去儲存,但是這個也會存在引數位數的限制。

Oracle資料字串拼接

select tablename,ltrim max sys connect by path fieldname,as fields from select tablename,fieldname,rnfirst,lead rnfirst over partition by tablename or...

oracle擷取資料字串

主要的函式介紹 1 拼接字串 1 可以使用 來拼接字串 1 select 拼接 字串 as strfrom dual 2 通過concat 函式實現 1 select concat 拼接 字串 as strfrom dual 注 oracle的concat函式只支援兩個引數的方法,即只能拼接兩個引數...

JS資料 字串 陣列

array string thing 字串化 str.length返回字串長度 str.touppercase 轉換成大寫 str.tolowercasw 轉換成小寫 使用 運算子將多個字串連線 每行末尾使用反斜槓字元 let longstring this is a very long strin...