收获jquery选择没有选择?

时间:2013-02-03 00:14:13

标签: jquery jquery-chosen

是否可以使用选择的收获jquery而无需使用默认的<select><option>abc</option></select>标记?

我想要将这种代码转换为选择性字段的响应性收获:

<!-- Language Switcher -->
<ul>
  <li><a href="abc.com/lang/german">Switch language to german</a></li>
  <li><a href="abc.com/lang/english">Switch language to english</a></li>
</ul>

或者我也可以编写html代码,就像从select标签生成的收获产生的完成输出一样(带有ul,li和类chzn-drop,chzn-results,...) 。我已经尝试过了,但我不知道如何启动选择的javascript来使用该块就像它一样,而不是试图改变任何东西。

原因是:我希望语言切换器选择SEO(链接作为链接而不是我阅读的选项的某些data- *属性,只对javascript做出反应),同时保持美观和选择的功能。

修改
似乎如果不修改插件

,这是不可能的

1 个答案:

答案 0 :(得分:0)

您可以使用自己的包装器或插件使其可以接受choocen 示例如:

<ul id="TesT">
  <li><a href="abc.com/lang/german">Switch language to german</a></li>
  <li><a href="abc.com/lang/english">Switch language to english</a></li>
</ul>

小脚本:

function modi(selector){
   $(selector).each(function(){
   var html ="";
   $('li',this).each(function(){
      html +='<option value="'+$('a',this).attr('href')+'">'+$('a',this).html()+'</option>';
   });
   $(this).replaceWith('<select>'+html+'</select>').chosen();
   });
}

并称之为:

modi('#TesT');

目前我的脚本替换旧的原始标记,但您也可以使用隐藏和添加新元素。