javascript – JQuery .text()不能使用indexOf来查找空格

前端之家收集整理的这篇文章主要介绍了javascript – JQuery .text()不能使用indexOf来查找空格前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是一个奇怪的.

我有一个列表项,包含文本’2011年5月13日’.我有很多这些日期,我想使用JQuery通过自由文本输入搜索它们(它们并不总是日期),但如果我在搜索框中放置一个空格,我似乎无法搜索任何内容.

然而,

li.text() // 13 May 2011
li.text().indexOf('13') // 0
li.text().indexOf('13 ') // -1
li.text().indexOf(' ') // -1
'13 May 2011'.indexOf('13') // 0
'13 May 2011'.indexOf('13 ') // 0
li.text() == '13 May 2011' // false

我已经将我的返回文本粘贴到文本到十六进制转换器中,并且空格字符是’20′(十进制32,这是ASCII中的空格),所以它不是一个有趣的空格字符.

以前有人遇到过这个问题吗?有没有人有任何其他想法?

解决方法

回答我自己的问题.感谢所有那些通过发表评论帮助我的人!

除了我的机器上的真实版本之外,使用此列表项的所有测试都已正常工作!出于某种原因,它不是空格,它是ASCII字符160(非破坏空间,HTML实体& nbsp;)

进一步调查显示

hex(li.text()) // 31 33 a0 4d 61 79 a0 32 30 31 31
li.text().indexOf('13'+String.fromCharCode(160)) // 0

我不会质疑为什么,至少它现在有效:D

原文链接:https://www.f2er.com/jquery/156884.html

猜你在找的jQuery相关文章