代码之家  ›  专栏  ›  技术社区  ›  Kai Qing

您能使用selected=“selected”自动选择吗选择大小.js有货吗?

  •  1
  • Kai Qing  · 技术社区  · 6 年前

    我正在做一个项目,每个select字段都应该使用选择大小.js. 页面上可以有任意数量的select字段,我从不知道,所以它必须是抽象的。

    $('.selectize').selectize({
        create: true
    });
    

    当selectize inits。。。

    <select class="selectize">
        <option value="1">Option 1</option>
        <option value="2">Option 2</option>
        <option value="3" selected="selected">Option 3</option>
    </select>
    

    但由于某些原因,selectize仅在init运行时将第一个选项设置为selected。

    我在文件里漏了什么吗?或者selectize真的不使用html中的selected属性吗?

    这在使用时也不起作用 <option value="3" selected>

    澄清一下,这是一个数据过滤实用程序,点击方向过滤器,选择框等,希望重新加载页面,同时保持所有的选择。因此,我必须依赖PHP GET params来设置所选的项。这部分工作正常,我已经通过禁用selectize验证了这一点。

    编辑 按照要求,这都是标准实现。Selectize工作正常,没有控制台错误。它只是在只选择第一个值的情况下初始化。

    更新

    var ss = $('#some-select').selectize();
    var selectize = ss[0].selectize;
    selectize.setValue(selectize.search(get_value).items[0].id);
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   benvc    6 年前

    是的,你可以用 selected 默认值为selectize option 挑选出来的

    $('.selectize').selectize({
      create: true
    });
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1">
      <title>Selectize</title>
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/css/selectize.default.min.css">
    </head>
    
    <body>
    
      <select class="selectize">
        <option value="1">Option 1</option>
        <option value="2">Option 2</option>
        <option value="3" selected>Option 3</option>
      </select>
      
      <select class="selectize">
        <option value="1">Option 1</option>
        <option value="2" selected>Option 2</option>
        <option value="3">Option 3</option>
      </select>
    
      <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.6/js/standalone/selectize.js"></script>
    
    </body>
    
    </html>