[英]how to remove the lastchild element of dynamically generated DIV and return the html as string
如何刪除動態生成的div的lastchild並將html重新生成為字符串。 HTML DIV示例
strHtmlString = "<div contenteditable='true' id='undefined'>Test1</div>
<div contenteditable='true' id='sentenceFreeTextField67' type='sentenceFreeTextField'>One</div>
<div id='multiselectAnchors' type='multi'>
<div id='options32' >Two</div>
<div contenteditable='true' id='sentenceFreeTextField68' type='sentenceFreeTextField'>One</div>
</div>
<div id='blank4' contenteditable='true' type='blankField'> </div>
<div id='Div1' type='multi'>
<div id='options33' >Three</div>
<div contenteditable='true' id='sentenceFreeTextField69' type='sentenceFreeTextField'>One</div>
</div>"
這是代碼示例
if (($('<DIV/>').html(strSentence)[0].lastChild.lastChild.type === 'sentenceFreeTextField') && (!$.trim($('<DIV/>').html(strSentence)[0].lastChild.lastChild.innerText))) {
strHtmlString = $('<DIV/>').html(strSentence)[0].lastChild.lastChild.remove().html; (this remove().html doesn't work)
}
需要在運行時刪除div的lastchild並轉換回字符串,就像之前一樣。 我可以做字符串操作,但可能不是正確的方法,請建議
var el = $(strHtmlString);
// dont know what you meant by last child, so taking the id
el.children().find("#sentenceFreeTextField69").remove();
var str = el.wrap("<div/>").parent().html()
動態生成DIV:
$('body').append('<div>');
生成后立即訪問DIV:
var $divElement = $('body').append('<div>').find('div');
得到最后一個孩子:
var $lastChildElement = $divElement.last();
獲取最后一個孩子的HTML(更具體地說,是innerHTML
):
var $lastChildHTML = $lastChildElement.html();
一起做,然后你轉身:
var $lastChildHTML = $('body').append('<div>').find('div').last().html();
那就是關於它的一切。
var last = $(element).children(':last-child');
var html = $(last).html();
$(last).remove();
var newHtml = $(element).html();
//incase you want the html with it's parent as well do this
var newHtml = $(element).parent().html();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.