首页  >  问答  >  正文

Select2 带有用于多重选择的复选框列表,但未获取值

<p>使用此代码,它可以工作。但没有在 $('form').serialize(); 中获取选定的值</p>
$('.select2-multiple').select2MultiCheckboxes({
    占位符:“选择多个元素”,
})  


<表单 id="search_vendor_form"> <选择名称=“sel-01[]” id=“sel-01”; class="select2-multiple"> <选项> <选项值=“AL”>阿拉巴马州</选项> <选项值=“CA”>加利福尼亚州</选项> <选项值=“NY”>纽约</选项> <选项值=“TX”>德克萨斯州</选项> <选项值=“WY”>怀俄明州</选项> </选择>
</表格>
jQuery(函数($) { $('.select2-multiple').select2MultiCheckboxes({ 占位符:“选择多个元素”, })`你的文字` }); $(文档).on('更改','#sel-01',function(){ console.log($(#search_vendor_form).serialize()) })</pre> <p>我想在ajax中发送表单值,但无法进入console.log($(#search_vendor_form).serialize())

P粉399585024P粉399585024387 天前519

全部回复(1)我来回复

  • P粉311563823

    P粉3115638232023-09-01 10:14:31

    • 您尚未将选择器放在引号中。它必须是一个字符串。
    • 由于某种原因,您似乎将“your text”作为函数后面的字符串,这是无效的,并且可能是一个错误。
    • 您需要将所有 JS 代码放入包装 jQuery(function($){ ... )} 函数的内部
    • 您打开的
      元素未正确关闭,您似乎在
      元素之前关闭了它,所以这两个结尾标签需要切换。

    下面应该可以解决这个问题:

    HTML

    <div class="row">
      <form id="search_vendor_form">
        <select name="sel-01[]" id="sel-01" class="select2-multiple">
          <option></option>
          <option value="AL">Alabama</option>
          <option value="CA">California</option>
          <option value="NY">New York</option>
          <option value="TX">Texas</option>
          <option value="WY">Wyoming</option>
        </select>
      </form>
    </div>
    
    <div class="row">
    </div>
    <div class="row">
    </div>
    

    JS

    jQuery(function($){
      $('.select2-multiple').select2MultiCheckboxes({
          placeholder: "Choose multiple elements",
      });
    
      $(document).on('change','#sel-01',function(){
          console.log($('#search_vendor_form').serialize())
      });
    });
    

    回复
    0
  • 取消回复