我有以下示例代码:
<div class="block" onclick="removesBlock(this)">
</div>
<div class="block" onclick="removesBlock(this)">
</div>
<div class="block" onclick="removesBlock(this)">
</div>
选择了特定的<ul class="name_of_class" id="TEST">
<li class="foo">1</li>
<li class="boo">2</li>
<li class="goo">3</li>
<ul>
后,该类将更改为名称加上<li>
或sortUp
的任何名称。
示例:
sortDown
我正在尝试获取<ul class="name_of_class" id="TEST">
<li class="foo">111</li>
<li class="boo sortDown">222</li>
<li class="goo">333</li>
<ul>
中实际文本的值,但是我一直在不确定。
<li>
我尝试使用不同的方式,但是无论我做什么,我都无法获得实际值,在这种情况下,实际值应该为var li = document.getElementById('TEST');
alert($('#TEST').filter('.sort').html());
。
知道我在做什么错吗?
答案 0 :(得分:1)
您可以使用li
选择器来选择sortUp
或sortDown
的{{1}}
[attribute * =“ value”]选择器用于选择其元素 属性值包含指定值。
[attribute*="value"]
const li = document.querySelector('[class*="sort"]');
console.log(li.textContent);
li.style.background = "red";
答案 1 :(得分:1)
我不确定这些类与获取单击的<ul class="name_of_class" id="TEST">
<li class="foo">111</li>
<li class="boo sortDown">222</li>
<li class="goo">333</li>
<ul>
元素的文本的要求有什么关系。只需在li
上设置click
事件处理程序,然后在处理程序中检查事件目标以确保它是ul
,然后获取事件目标的文本即可。 / p>
li
document.getElementById("TEST").addEventListener("click", function(evt){
if(evt.target.nodeName==="LI"){
alert(evt.target.textContent);
}
});
答案 2 :(得分:0)
也许您可以尝试以下方法:
CREATE VIEW all_formulas as
select f.id,
f.name,
f.abbreviation,
c.id as category_id,
c.name as category_name,
fr.parent_id,
case when (select count(*)
from formula_relationships
where parent_id = f.id) = 0
then 0 --IS EQUIVALENT TO FALSE IN SQLITE
else 1 --IS EQUIVALENT TO TRUE IN SQLITE
end as has_children,
f.function
from formula f
left join formula_relationships fr on f.id = fr.child_id
left join category c on f.category_id = c.id
where f.category_id = c.id;
您会发现一个li元素具有一个以“ sort”开头的类。 您可以看到更多此选择器here。