我正在开发Cordova应用程序,我有一个变量调用one
,其中包含以下内容:
Lorem Iépsum "Dolor sit", 2do. Blah, House Nº 31.<br>Monday / Friday, de 2:00 pm. a 6:00 pm.<br>Teléfono: <a href="tel:555777"555-777</a> Ext. 032.<br>
如果我这样做:
two=$(one).text();
我收到了错误:
file:///android_asset/www/js/jquery-1.11.0.min.js: Line 2 : Uncaught Error: Syntax error, unrecognized expression: Lorem Iépsum "Dolor sit", 2do. Blah, House Nº 31.<br>Monday / Friday, de 2:00 pm. a 6:00 pm.<br>Teléfono: <a href="tel:555777"555-777</a> Ext. 032.<br>
为什么会这样? 是因为它包含带有重音符号和波浪号的字符? 或者是出于包含引号的原因?
感谢阅读!
答案 0 :(得分:1)
由于您有Lorem Iépsum "Dolor sit", 2do. Blah, House Nº 31.<br>Monday / Friday, de 2:00 pm. a 6:00 pm.<br>Teléfono: <a href="tel:555777"555-777</a> Ext. 032.<br>
这样的文本,jQuery认为它是一个选择器,因此它无法通过选择器验证,因为<
和>
字符。
如果你想使用字符串构造一个html元素,那么你需要使用像
这样的html元素包装字符串var two = $('<div />', {
html: one
})
它会创建一个div
元素,其字符串为one
作为其内容。
如果您希望jQuery将传递的字符串视为html字符串来构造新元素,则必须以<