如何使用JavaScript或jQuery在网页中替换TD元素内文本中的序列ASCII 13 ASCII 10(CR LF DASH或/r/n-)?虽然stackoverflow和其他地方有类似问题的解决方案,但这些解决方案并不适用于此特定场景。传入的HTML是由客户遗留软件动态生成的,该软件不会更改,但它引用了一个我可以更改的JavaScript文件。下面是页面的缩短版本。实际页面包含零到二十行数据,其中一些包含多行。我的用户使用Internet Explorer 8,以下两行都不起作用。我尝试过仅替换回车和仅替换换行符。我尝试过从JavaScript和jQuery执行此操作,但没有任何可见效果。当我在Internet Explorer 8中保存页面并在十六进制编辑器中查看时,回车和换行符字符存在于客户端中。问题的关键在于将文本中的/n暴露给JavaScript。
我想进行此替换,因为我希望每当页面中存在/r/n-序列时,两行文本都出现在显示输出中的元素中。
请注意,我已包括两个版本的替换,一个是jQuery,一个是JavaScript。均未达到预期效果。
我想进行此替换,因为我希望每当页面中存在/r/n-序列时,两行文本都出现在显示输出中的元素中。
请注意,我已包括两个版本的替换,一个是jQuery,一个是JavaScript。均未达到预期效果。
<html>
<head>
<title>Page Testing </title>
<script src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('td').each(function () {
$this = $(this);
$this.html($this.html().replace(/\r\n\-/g, "<br/>-"));
this.innerHTML = (this.innerHTML.replace(/\r\n\-/g, "<br/>-"));
});
});
</script>
</head>
<body>
<table>
<tbody>
<tr>
<td>-First Content
-Second Line of Content</td>
<td>-How I want it to look<br/>-After the transformation</td>
</tr>
</tbody>
</table>
</body>
</html>