Javascript 如何根据JS中特定的父结构选择元素?
我正在尝试编写一个脚本,仅当父结构为div.main-element输入+标签+ul时,它才能获得抓取 有没有合适的方法使用javascript或jquery进行设置? 如果有人能告诉我合适的答案或文档,那绝对是太棒了 我的最终目标是使用append或.replace()将ul>li替换为hr标记 这是我的HTML:Javascript 如何根据JS中特定的父结构选择元素?,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试编写一个脚本,仅当父结构为div.main-element输入+标签+ul时,它才能获得抓取 有没有合适的方法使用javascript或jquery进行设置? 如果有人能告诉我合适的答案或文档,那绝对是太棒了 我的最终目标是使用append或.replace()将ul>li替换为hr标记 这是我的HTML: <div class='main-element'> <input> <label></label> <
<div class='main-element'>
<input>
<label></label>
<ul>
<li>Example</li>
</ul>
</div>
<div class='main-element'>
<input>
<label></label>
</div>
- 范例
您可以为jquery调用提供第二个参数,该调用是要从中获取元素的父容器。还有一个执行相同操作的find
函数
HTML:
另一种方法:
var $secondaryInput = $('.secondary-element').find('input');
上述两个示例将仅返回辅助元素
div中的输入元素
这回答了你的问题吗
链接:
及
您可以在jquery中使用以下代码检查您想要的元素是否存在:
if($("div.main-element ul li").length){
//your code
}
这将在您的html示例上执行,接下来您可以使用以下命令修改第一个元素的值:
$("div.main-element ul li").append("blahblahblah");
请注意,这使您可以访问html页面div.main-element>ul中的第一个li标记。这将使用您的合成获取所有元素,并用hr替换ul>li
var elements = document.querySelectorAll(".main-element input+label+ul li");
for(var i = 0; i < elements.length; i++){
var parent = elements[i].parentNode.parentNode;
var ul = elements[i].parentNode;
ul.parentNode.removeChild(ul);
var hr = document.createElement("hr");
parent.appendChild(hr);
}
var-elements=document.queryselectoral(“.main-element-input+label+ulli”);
对于(var i=0;i
请阅读。关键短语:“搜索、研究”和“解释……任何阻碍你自己解决的困难”。
$("div.main-element ul li").append("blahblahblah");
var elements = document.querySelectorAll(".main-element input+label+ul li");
for(var i = 0; i < elements.length; i++){
var parent = elements[i].parentNode.parentNode;
var ul = elements[i].parentNode;
ul.parentNode.removeChild(ul);
var hr = document.createElement("hr");
parent.appendChild(hr);
}