根据<br/>使用jquery标记
Split the string based on <br/> tag using jquery
如何使用jquery拆分包含<br/>
标记的字符串。我尝试了以下代码,但在控制台中出现错误。我不知道如何根据<br/>
标签拆分字符串这是我尝试的代码
jQuery(document).ready(function($)
{
var lines = jQuery('this is for testing <br/> How are you<br/>').split('<br/>');
jQuery.each(lines, function() {
alert(this);
});
});
任何建议都很好。
这里有很多重复的答案。这个不同。如果你能保证<br/>
标签的拼写,其他答案都可以。但是,如果您无法控制HTML,换行标记可能有不同的格式:
<br/>
<BR/>
<br/>
<br>
<br>
…等
主要的浏览器都可以处理所有这些,但建议的.split("<br/>")
操作只能处理第一个。一个更健壮的选项是使用正则表达式来匹配标签:
jQuery(document).ready(function($)
{
var brExp = /<br's*'/?>/i;
var lines = ("this is for testing <br/> How are you<BR />").split(brExp);
});
我已经编写了不区分大小写的表达式,允许在'<br',而'/'是可选的。
如果要拆分一个普通字符串,不要简单地将其传递给$()
;
jQuery(document).ready(function($)
{
var lines = 'this is for testing <br/> How are you<br/>'.split('<br/>');
jQuery.each(lines, function() {
alert(this);
});
});
尝试使用这个:
var exploded = lines.split('<br />');
更多信息请点击此处
如果您尝试:
jQuery(document).ready(function($)
{
var lines = 'this is for testing <br/> How are you<br/>'.split('<br/>');
each(lines, function() {
alert(this);
});
});
你不能做一些类似的事情吗:
var lines = 'this is for testing <br/> How are you<br/>'.split('<br/>');
顺便说一句,如果你想去掉空元素,你可以像这样过滤lines
:
// this will get rid of empty elements
lines = lines.filter(function(n) {
return n;
});
jQuery(document).ready(function($)
{
var str = 'this is for testing <br/> How are you<br/>';
var lines = str .split('<br/>');
jQuery.each(lines, function() {
alert(this);
});
});
不需要像一样包装在jquery中
jQuery('this is for testing <br/> How are you<br/>').split('<br/>');
Can be like :
('this is for testing <br/> How are you<br/>').split('<br/>');
DEMO
试试这个
jQuery(document).ready(function($)
{
var lines = ('this is for testing <br/> How are you<br/>').split("<br/>");
jQuery.each(lines, function() {
alert(this);
});
});
演示
这是工作代码
jQuery(document).ready(function($)
{
var lines = 'this is for testing <br/> How are you<br/>'.split('<br/>');
alert("workig");
jQuery.each(lines, function() {
alert(this);
});
});
这不是jQuery解决方案,但希望有人会发现它很有用。函数返回一个或两个元素。
function splitContentsOnBr(el) {
const before = document.createElement('div');
const after = document.createElement('div');
let found = false;
el.childNodes.forEach(c => {
if (found) {
after.appendChild(c.cloneNode(true));
} else if (c.tagName == 'BR') {
found = true;
} else {
before.appendChild(c.cloneNode(true));
}
});
return after.childNodes.length ? [before, after] : [before];
}
document.querySelector('#result').innerHTML = splitContentsOnBr(document.querySelector('h1'))
.map(el => el.textContent.trim())
.join(', ');
<h1>
First part
<br>
Second part
</h1>
<div id="result">
</div>
相关文章:
- jQuery使用anoSlide在手机上滑动
- jQuery使用api获取typeform结果
- JQuery使用相同的功能自动完成各种输入文本
- jQuery:使用“jQuery验证”后无法提交表单's远程验证
- jQuery使用ajax自动完成问题-TypeError:this.source不是函数
- jQuery:使用substr()的另一种方法
- 我如何让jQuery使用Greasemonkey 0.8脚本(在Firefox 2上),在没有互联网的情况下使用PC
- jquery使用name from变量按类选择元素
- JQuery:使用clone()生成的元素不采用原始的事件属性
- jQuery使用$.post上传文件
- 如何将数据附加到DOM元素以供jQuery使用
- jquery使用val()复制值似乎可以删除换行符
- jQuery使用.of()删除事件处理程序时出现的问题
- jquery使用输入框内容
- jQuery:使用实时事件添加tabindex属性
- Jquery使用html对象添加更多内容
- jQuery 使用 .scroll(handler) 滚动到元素
- PHP jQuery使用多个单词传递值
- 防止已选择的选项 Jquery 使用 MYSQL 自动完成
- jQuery使用XML数据更新UL列表