gpt4 book ai didi

javascript - 比较 jQuery 中对象的 InnerHTML

转载 作者:行者123 更新时间:2023-12-03 09:48:30 28 4
gpt4 key购买 nike

我可以获得.html() SharePoint 文本框的外观,在 DOM 中仅显示为 <div> 。当文本框为空时,<div>的InnerHTML只是显示为 <p></p> .

因为这个特定的文本框并不总是出现(我根据表单上前一个复选框的选定值控制其外观),所以我无法将其设为必需,因此我通过检查它是否是动态的来执行此操作填写或不保存。这意味着查看 InnerHTML 是否为 <p></p>或类似<p>asdf<span id="ms-rterangecursor-start" RteNodeId="1"></span><span id="ms-rterangecursor-end"></span></p> ,其中asdf是输入的文本(SharePoint 将所有冗长的内容放入其中)。

我想我能做的就是像这样检查它,用 explainField代表<div>作为 jQuery 变量,类似于 http://makandracards.com/makandra/13445-compare-two-jquery-objects-for-equality 中所做的操作:

var $divNode = $('div');
var $pNode = $('p');
var $testNode = $divNode.html($pNode);
if (explainField.is($(testNode))) {
// we got <p></p>
return false; // go no further
} else {
return true; // we're ok
}

但是这种比较不起作用。当没有文本时,该语句应该满足并返回 false。相反,它返回 true 并认为我们有文本,而实际上没有。我怎样才能使这个比较工作并在找到 <p></p> 时返回 false ?

最佳答案

因此,请尝试以下比您尝试的更容易的操作。

var $divNode = $('div');
var html = $divNode.html();

if ( $(html).children().length > 0 ) {
alert ("not empty");
} else {
alert ("empty");
}

Demo

关于javascript - 比较 jQuery 中对象的 InnerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30947738/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com