我正在使用我制作的插件,因此我可以使用自定义下拉框(并且在浏览器中具有一致的外观)。单击自定义框中的值时,它会更改隐藏的“实际”选择框中的值。在使用小于(&lt;)和大于(&gt;)符号时,我遇到了问题。它适用于所有其他没有特殊符号的选项。我尝试过使用实际符号,并尝试使用<
和>
<ul class="selector">
<li>Pounds</li>
<li>< 100</li>
<li>101-120</li>
<li>121-140</li>
<li>141-160</li>
<li>161-180</li>
<li>181-200</li>
<li>> 200</li>
</ul>
<select class="page1 fleft" id="weight" name="weight" style="visibility:hidden;">
<option selected="selected" value="select">Pounds</option>
<option value="< 100">< 100</option>
<option value="101-120">101-120</option>
<option value="121-140">121-140</option>
<option value="141-160">141-160</option>
<option value="161-180">161-180</option>
<option value="181-200">181-200</option>
<option value="> 200">> 200</option>
</select>
$("ul.selector li).click(function(){
$(this).parent().next().val($(this).html());
});
这是一个更复杂的插件,我只是拔出了与此相关的部分..插件中的树遍历都处理得很好(我只是在这里写了一些看似正确的东西),重要的是价值更改。那么,有没有人知道为什么它不会让我选择任何小于或大于符号的选项?
答案 0 :(得分:1)
使用$(this).text()
代替$(this).html()
。
<强> DEMO 强>
答案 1 :(得分:1)
如果不使用html()
而使用text()
$("ul.selector li").click(function(){
$(this).parent().next().val($(this).text());
});
答案 2 :(得分:0)
在选项上使用urlescape
'd值。请记住,这些值是URL的一部分,符号&
是保留的。