1

我有一个带有输入字段和 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));

这解决了问题。

4

0 回答 0