Javascript 添加';名称';属性为';选择';标签取决于所选的';李';班
我的'select'列表由'selected.js'转换为'ul'列表,但搜索功能取决于'select'列表的'name'属性'Javascript 添加';名称';属性为';选择';标签取决于所选的';李';班,javascript,jquery,css,html-select,jquery-chosen,Javascript,Jquery,Css,Html Select,Jquery Chosen,我的'select'列表由'selected.js'转换为'ul'列表,但搜索功能取决于'select'列表的'name'属性' <select name="test"> <option value="1">Пункт 1</option> <option value="2">Пункт 2</option> <option value="3">Пункт 3</option>
<select name="test">
<option value="1">Пункт 1</option>
<option value="2">Пункт 2</option>
<option value="3">Пункт 3</option>
<option value="4">Пункт 4</option>
</select>
<div>
<ul>
<li class="parent result-selected">one</li> (selected option)
<li class="active-result">two</li>
<li class="active-result">three</li>
<li class="active-result">four</li>
</ul>
</div>
此代码基于选项“id”,在“select”列表出现之前一直有效,但不能将“selected.js”转换为“ul”列表,它在中声明它有自己的事件处理程序;语法是$(“#表单_字段”).selected().change(…)代码>
所以在你的情况下,试试看
$("select").chosen().change(function(){
... code here
});
您可以在ul
标签上使用。检查类属性中的更改。如果更改了class属性,则在选择class结果的情况下获取li
,并查看它是否具有class父级
const selectEle=document.querySelector('select');
const targetNode=document.querySelector('ul');
常量配置={
属性:正确,
儿童名单:是的,
子树:真
};
常量回调=函数(mutationList){
for(让突变列表突变){
if(mutation.type==='attributes'){
if(mutation.attributeName==“class”){
const selectLi=document.querySelector('.result selected');
console.log('Before-',选择ele.name);
selectEle.name=(selectLi.classList.contains('parent'))?“parent”:“test”;
console.log('在-'之后,选择ele.name);
}
}
}
}
const observer=新的MutationObserver(回调);
observer.observe(targetNode,config);
const li=document.querySelector('li');
li.classList.add('parent');
//li.classList.remove('parent')代码>
Пункт 1
Пункт 2
Пункт 3
Пункт 4
- 一个(选定选项)
- 两个
- 三个
- 四个
但是如果“id”在“option”标签中,并且没有包含在“li”标签中,我不知道它是如何工作的。非常感谢,它应该可以工作,但它不能
$("select").chosen().change(function(){
... code here
});