jquery - 收获jquery-选择而不选择?

标签 jquery jquery-chosen

是否可以使用选择的harves 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 的 div 和类 chzn-drop、chzn-results 等)生成的最终输出一样。 。我已经尝试过,但我不知道如何启动所选的 javascript 以按原样使用该 block ,而不是尝试再转换任何内容。

原因是:我希望语言切换器选择进行 SEO(将链接作为链接,而不是作为我读取的选项的某些 data-* 属性,并且仅对 JavaScript 使用react),同时保持美观以及选择-选择的功能。

编辑
看来不修改插件是不行的

最佳答案

您可以使用自己的包装器或插件来使其可供选择接受 示例如下:

<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');

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

关于jquery - 收获jquery-选择而不选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14668047/

相关文章:

php - jquery json 和 php mysql 提交检查

jQuery UI slider 从数据属性设置值

Javascript : accurate CSS TranslateX ( position ) taking Transform Scale into account

jquery - 有没有办法将 Chosen jQuery Plugin 始终放在前面?

javascript - 选择的 jquery 插件基本 ui 不起作用

php - For循环下如何获取Chosen Multiselect选中的值

javascript - 使用 Javascript/HTML5 制作 2D 棋盘的最佳/最简单方法?

javascript - 如何使用 Umbraco 修复 JavaScript 语法错误?

javascript - Jquery 多选插件与meteor

javascript - Jquery 选择 Ajax 调用不渲染选项