[英]Jquery html() method not working if we place a div inside a p tag?
這是我的HTML:
<div class="accor">
</div>
<div class="accordionContentTwoCol">
<p class="noEdit">
<div> name : </div>
</p>
<div>
我需要找到accordionContentTwoCol
div的html內容(我只能訪問accor
)。
如果我嘗試在accordionContentTwoCol div中打印html,如下所示:
alert("html inside accordionContentTwoCol :"+$('.accor').next().html());
它提供如下輸出:
雖然accordionContentTwoCol
中的HTML是:
<p class="noEdit">
<div> name : </div>
</p>
為什么會這樣?
查找允許的包含關系的權威位置是HTML規范。 例如,參見http://www.w3.org/TR/html4/sgml/dtd.html 。 它指定哪些元素是塊元素,哪些元素是內聯元素。 對於這些列表,請搜索標記為“HTML內容模型”的部分。
對於P元素,它指定以下內容,表示P元素僅允許包含內聯元素。
<!ELEMENT P - O (%inline;)* -- paragraph -->
這與http://www.w3.org/TR/html401/struct/text.html#h-9.3.1一致,它說P元素“不能包含塊級元素(包括P本身)。”
你使用的標記是錯誤的。 <div>
不能與<p>
標簽嵌套。
嘗試使用
<div style="display: inline">
否則,請使用<span>
而不是<div>
。
P元素代表一個段落。 它不能包含塊級元素 (包括P本身 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.