用javascript检测文本中的换行符
Detect line break in text with javascript
我可以在元素中使用javascript设置换行符,但我无法读取它们。
示例:
<div id="text"></div>
Js:
document.getElementById("text").innerHTML = "Hello <br /> World";
var x = document.getElementById("text").innerHTML;
if(x == "Hello <br /> World")
{
alert('Match');
}
在我的情况下没有对手。。。
从对象中获取.innerHTML
属性,然后尝试将其与某个精确的字符串进行比较,这几乎不是一件好事。这是因为浏览器唯一的约定是向您返回等效的HTML,而不一定是完全相同的HTML。如果您请求的内容中没有嵌套的DOM元素,这可能不是问题,但如果有嵌套的HTML元素,这通常会成为问题。
例如,IE的某些版本会更改属性的顺序、更改引用、更改间距等
相反,您应该在实际的DOM中搜索您想要的内容,或者只查找一小块您知道无法更改的HTML,或者使用可以容忍HTML更改的搜索算法。
正如Niels在评论中提到的,Chrome、IE11和Firefox都返回"Hello <br> World"
,您可以通过下面这样的简单调试语句亲眼看到:
console.log("'" + x + "'");
工作演示,亲眼看看它显示了什么:http://jsfiddle.net/jfriend00/zc59x2bL/
仅供参考,您的代码也包含一个错误。您需要向document.getElementById()
传递一个字符串,该字符串应该是document.getElementById("test")
,而不是document.getElementById(test)
。
相关文章:
- 在文本区域中使用jQuery.text()保持换行符
- 文本区域-获取每一行,找到换行符
- 在文本区域中保留换行符.value
- 捕捉文本中的换行符
- 根据换行符选择文本
- 如何替换文本区域中的换行符
- 将 .append() 与列表一起使用会将文本放在换行符上
- 如何从文本区域获取文本,包括换行符
- 如何从文本区域获取换行符
- 测试光标是否位于文本区域中的第一行(使用软换行符)
- 有没有一种方法可以用包含ENTER键换行符的SQL数据填充文本区域表单
- 将换行符添加到.text内容文本
- 文本区域换行符未显示
- 删除文本区域中某个文本后出现的换行符
- 通过javascript保留文本区域换行符
- D3 垂直条形图为标签文本添加换行符
- 返回标签的文本值,并在每个标签后附加换行符
- 为图像上绝对定位的文本块添加换行符以创建文本条带
- 如何从保留换行符的 window.prompt() 返回文本
- 如何检测文本区域输入中的换行符