$('.btn').click(function(){
let arr = $('#parent').html().split('\n');
let first = arr[0];
console.log(first);
});
.parent{
background:gold;
min-height:99px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='parent' id='parent' contentEditable></div>
<br>
<button class='btn'>CLICK</button>
请在parent
内输入任何多行文本。
第一行(或块)应除以Enter (keycode 13)
。
在控制台中,我只需要第一行。
因此,点击btn
。
结果:整个html 。
为什么只有第一行没有div
标签?
答案 0 :(得分:0)
将拆分更改为使用split('<div>')
而不是\n
。您可以进一步删除将在
文本中添加的所有contentEditable
:
$('.btn').click(function() {
let arr = $('#parent').html().split('<div>');
let first = arr[0].replace(/ /g,'');
console.log(first);
});
.parent {
background: gold;
min-height: 99px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='parent' id='parent' contentEditable></div>
<br>
<button class='btn'>CLICK</button>
答案 1 :(得分:0)
要获取Div的第一行,您可以使用:
var text = $('#parent').clone().children().remove().end().text();
演示
$('.btn').click(function() {
var text = $('#parent').clone().children().remove().end().text(); // get text
console.log(text);
});
.parent {
background: gold;
min-height: 99px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='parent' id='parent' contentEditable></div>
<br>
<button class='btn'>CLICK</button>