在某些情况下,Javascript替换不起作用

时间:2013-08-02 10:00:30

标签: javascript replace

我有一个问题,这花了我一些时间,但我找不到解决方案。 这是我在javascript中的功能:

var testofin = name.replace('<?php echo $nome_dispositivo; ?>' ,'');
testofin = testofin.replace('-', '' );
testofin = testofin.replace('–', '' );
testofin = jQuery.trim(testofin);

我在php中使用一个变量,从字符串中删除它,而不是从相同的字符串中删除 - 和 - 然后修剪它。 它有时会起作用,但在同一网页中却不起作用:check navigation on the left

该脚本不适用于:

- 具体

- 设计ed Ergonomia

但它适用于其他章节,其中不再出现 - 或 - 符号。任何帮助表示赞赏!

谢谢。

编辑:感谢所有人,我解决了以下问题:

testofin = testofin.replace('–', '' );

使用HexCode:

testofin = testofin.replace('\u2013', '' );

2 个答案:

答案 0 :(得分:0)

好的,所以这个解决方案非常特定于该页面,所以它可能不适用于所有情况,但它应该适用于您提供的链接。

var dashChar = String.fromCharCode(8211);
testofin = testofin.replace(dashChar, '' );

我所做的是复制“Microsoft Surface Pro - Design ed Ergonomia”中的破折号并获取破折号字符代码,恰好是8211(扩展的Ascii),因此上面的代码使用该值并替换它。

让我知道它是否有效或是否有任何问题:)

答案 1 :(得分:0)

我解决了替换:

testofin = testofin.replace('–', '' );

使用其hexCode:

testofin = testofin.replace('\u2013', '' );