语法错误,无法识别的表达式:符号名称

时间:2017-05-03 11:11:29

标签: javascript regex dom

我的软件中包含以下代码:

MyText = "some\" Text"
$(MyDiv).parent().siblings("[data-value=" + CorrectCharacters(MyText) + "]");

CorrectCharacters = function (text) {
        return text.toString().replace(/([ #;&,.+*~\':"!^$[\]()=>|\/@])/g,'\\$1')
}

MyText可能包含任何文本,通常它可以工作,除非它包含“在中间。 在这种情况下,我得到以下异常:

Uncaught Error: Syntax error, unrecognized expression: data-text="some\" Text]

我已尝试过针对其他问题的建议解决方案:

MyText = 'some\\" Text'

但他们不适合我。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:-1)

这应该会更好:

$(MyDiv).parent().siblings("[data-value=" + CorrectCharacters(MyText) + "]");

我删除了野外'并添加了一个+以便正确连接变量。