window.location不传递完整的字符串

时间:2017-06-15 20:56:34

标签: javascript php json

我正在尝试使用window.location将长字符串变量传递给另一个页面(fillDB.php)

window.location = "fillDB.php?encoding_str=" + JSON_encoding_str;

但字符串没有完全传递给fillDB.php,这里是fillDB.php中的代码:

$encoding_str = json_decode($_REQUEST['encoding_str']);
echo $encoding_str;

字符串已打印但不完整,我不知道问题出在哪里!

我已为编码字符串指定了值:

encoding_str += isSimilar_DB(game)+","+reaction[3]+";";

然后使用JSON.stringify:

var JSON_encoding_str = JSON.stringify(encoding_str);

让事情清楚:

isSimilar_DB(game) 

是一个返回长字符串的函数 和

reaction[3]

返回ID

传递整个字符串JSON_encoding_str时,反应[3]被正确打印但返回的字符串(isSimilar_DB(游戏))不完整

编辑:我已解决了这个问题。我认为问题是字符串的长度或URL的限制长度,但我发现问题是从isSimilar(游戏)函数返回的字符串包含少于字母"<&#34 ;,所以打印字符串直到它到达"<"并停止,我仍然不知道原因,但任何方式我取代"<"用" ="它工作得很好。谢谢大家。

1 个答案:

答案 0 :(得分:0)

网址有字符限制。它对于不同的浏览器来说是不同的。 总的来说,你不应该有超过2000个字符的网址。 您可以查看此主题:What is the maximum length of a URL in different browsers? 如果超过此限制,您的网址将会被删除。