jqTransform是一个web界面美化的jquery插件,实用过程中发现对select赋值后,他美化后的下拉框不变化,研究了一下源码。增加如下代码即可修复bug
//这样当我们 $('#select').val('abc');的时候就正常了。否则select的值变化了。但是显示的ui不变化。 $('select.jqTransformHidden').live('change',function(){ var thiz = $(this); var text = thiz.find('option:selected').text(); var ul = thiz.parents('div.jqTransformSelectWrapper:first ul'); ul.find('a').removeClass('selected'); ul.find('a:contains("' + text + '")').addClass('selected'); ul.prev().find('span').text(text); });
//下拉框不显示的bug修改在源码中添加如下代码 iSelectHeight = (iSelectHeight == 0 ? ($('li',$ul).length * 24) : iSelectHeight); //具体添加位置在下面这行代码下边 var iSelectHeight = ($('li',$ul).length)*($('li:first',$ul).height());//+1 else bug ff