我有一个带有输入字段和 JS 函数的页面,可以使用输入值作为 _GET 参数。
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<script type="text/javascript" charset="utf-8">
var urlBasePath = '/webpage/';
function addUserCategory()
{
name=document.getElementById('userMenuInput').value;
parent.dhxLayoutMenu.cells('a').attachURL(urlBasePath + 'file.php?name='+name);
}
</script>
<div class="userMenuHeader">
<input size="25" id="userMenuInput" class="userMenuInput" type="text" name="nazwaFiltra">
<input type="button" value="save" class="userMenuButtonSave" onclick="addUserCategory();">
</div>
当我输入波兰语字符时,我在 Chrome 和 IE 中有不同的调用。我在 IE 调用的 access.log 中看到的是:
name.php?name=z\xb3\xb9
从 Chrome 拨打电话后,我看到:
name.php?name=z%C5%82%C4%85
这是所需的电话。 如何强制 IE 生成与 Chrome 相同的编码?
问候,路德维克
解决方案是在变量“名称”上使用 encodeURI() 函数:
parent.dhxLayoutMenu.cells('a').attachURL(urlBasePath + 'file.php?name='+encodeURI(name));
这解决了问题。