这是一个奇怪的.
我有一个列表项,包含文本'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
Run Code Online (Sandbox Code Playgroud)
我已将我的返回文本粘贴到文本到十六进制转换器中,并且空格字符是'20'(十进制32,这是ASCII中的空格),所以它不是一个有趣的空格字符.
以前有人遇到过这个问题吗?有没有人有任何其他想法?
回答我自己的问题.感谢所有那些通过发表评论帮助我的人!
除了我机器上的真实版本之外,所有使用此列表项的测试都已正常工作!出于某种原因,它不是空格,它是ASCII字符160(不间断空格,HTML实体 )
进一步调查显示
hex(li.text()) // 31 33 a0 4d 61 79 a0 32 30 31 31
li.text().indexOf('13'+String.fromCharCode(160)) // 0
Run Code Online (Sandbox Code Playgroud)
我不打算质疑为什么,至少它现在有效:D
| 归档时间: |
|
| 查看次数: |
4092 次 |
| 最近记录: |