0
我知道这应该是更容易,如果我只能使用optgroups。但我试图避免黑客攻击我的CMS的核心,所以jQuery应该再次来拯救,希望。设置属性禁用选项不包含某个字符串
我有一个选择层次结构有时候,我想把属性禁用任何包含文本不以短划线开头的选项。 我想这样的代码:
将禁用的属性设置为选项文本不以短划线(“ - ”)开头的选择器。
<select id="options">
<option value="" selected="selected">- Please choose -</option>
<option value="1">Parent1</option>
<option value="2">-child1</option>
<option value="3">-child2</option>
<option value="4">-child3</option>
<option value="5">-child4</option>
<option value="6">Parent2</option>
<option value="7">-child5</option>
<option value="8">-child6</option>
<option value="9">-child7</option>
<option value="10">-child8</option>
</select>
最接近的解决方案是在这里:contain/start by,
$.extend($.expr[':'], {
startsWith: function(elem,match) {
return (elem.textContent || elem.innerText || "").indexOf(match[3]) == 0;
}
});
但我似乎无法做是正确的这么远。
任何帮助将非常感激。非常感谢你。
你是我的英雄尼克。奇迹般有效。这也应该可以帮助许多具有这种限制的CMS用户,他们可能很幸运地发现这一点。真的非常感谢你。 – swan 2010-05-12 20:04:40
顺便说一句,为了学习的目的,我可以把.attr('disabled','disabled');那里呢?谢谢 – swan 2010-05-12 20:06:17
第二个选项,我几乎在那里除了“:not(:”关于哪一个我感到困惑“.not”的部分除外。谢谢 – swan 2010-05-12 20:09:43