我们使用jQuery UI selectmenu,它重写我们的下拉框,如下所示:
<select style="width: 324px; display: none;" id="speedA" name="fruits">
<option value="NA">Please Select</option>
<option value="A">Apple</option>
<option value="O">Orange</option>
<option value="P">Pear</option>
</select>
<a aria-owns="speedA-menu" aria-haspopup="true" tabindex="0" href="#" role="button" id="speedA-button" class="ui-selectmenu ui-widget ui-state-default ui-selectmenu-dropdown ui-state-active ui-corner-top" style="width: 312px; background: none repeat scroll 0% 0% rgb(239, 239, 239); border: 1px solid rgb(236, 0, 140);"><span class="ui-selectmenu-status">Apple</span><span class="ui-selectmenu-icon ui-icon ui-icon-triangle-1-s"></span></a>
如果选项没有更改,我们有一些jquery可以更改此选择菜单的背景和边框,这完全有效(正如您在上面的HTML中看到的那样,<a>
链接已经得到style""
)中分配给它的错误颜色:
if(bizzstate == "NA") $('#speedA-button').css({"background":"#efefef","border":"1px solid #ec008c"});
我们遇到的问题是,当它发生变化时,将其更改为默认颜色:
$('#speedA-button').change(function() {
$('#speedA-button').css({"background":"","border":"1px solid #AAAAAA"});
});
以上代码似乎不起作用..它只是保持旧颜色。
非常感谢任何帮助
更新 =========
弄清楚原因,因为改变的是:
<span class="ui-selectmenu-status">Apple</span>
NOT:
<a id="speedA-button" class="ui-selectmenu ui-widget ui-state-default ui-selectmenu-dropdown error_input ui-corner-all" aria-owns="speedA-menu" aria-haspopup="true" tabindex="0" href="#" role="button" style="width: 312px;">
我们如何在上面的跨度中添加更改函数?
答案 0 :(得分:1)
将css放入课堂。
将该类添加到元素:
if(bizzstate == "NA") $('#speedA-button').addClass("specialColors");
然后在不需要时从元素中删除该类:
$('#speedA').change(function() { $('#speedA-button').removeClass("defaultColors"); });
答案 1 :(得分:0)
$('#speedA-button')
没有onchange
事件,不是吗?