我正在尝试将我的语言(希伯来语)中的字符串传递给脚本。 我已经构建了this页面
包含输入文本
<input type="text" class="filter" id="Filter"/>
和一个脚本,用于在更改时获取文本,然后表格过滤掉结果
<script>
$('#Filter').change(function() {
var str = $('#Filter').val();
str = str.replace(/[\s]/g, '_'); //replcae spaces to "_" (Otherwise we get errors)
$('#Table').load('printShorts.server.php?Sortby=<?echo $sort;?>&dir=<?echo $direction;?>&filter='+str+'&no-cache=' + (new Date()).getTime() ).fadeIn("slow");
});
</script>
它传递了很大的值 - 在FF和chrome中。 问题始于IE8(可能是9) 你们有什么建议我会做什么的? 我甚至不知道是否有像萤火虫这样的IE调试软件..
如果您在页面中注意到,我也使用了UTF8
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
帮助将受到关注..
答案 0 :(得分:0)
请记住,您必须以某种UTF-8格式保存文件,您可以在文本/代码编辑器中设置它。
答案 1 :(得分:0)
从你给出的实际错误信息中我会猜到这个问题。您不是编码str参数的URL,而是utf-8,可能会请求URL中无效的字符。 Chrome和FF可以优雅地处理IE8中的一些(先前版本没有)
而不是+str+
,然后使用+encodeURIComponent(str)+
这将对str中的内容进行编码,并确保生成的URL有效