【问题标题】:jquery-select2 always sends null params in controllerjquery-select2 总是在控制器中发送空参数
【发布时间】:2018-04-19 09:58:22
【问题描述】:

我正在使用 jquery-select2 通过 ajax 加载数据。但是 jquery-select2 总是向控制器操作发送空参数

这是我用来搜索数据的 agent.js 代码

$('.chosen-select').select2({
    minimumInputLength: 2,
    placeholder: "Search by Agency code, agent code, name or email",
    ajax: {
      url: "/dashboard/agent_invitations/search_agents",
      dataType: 'json',
      type: 'GET',
      data: function (term) {
        {
          q: term }
      },
      processResults: function (data) {
        results: data.results
      }
    }
  }); 

agents_controller.rb

def search_agents
  respond_to do |format|
    format.json {render json: { "data": current_salesperson.search_agents(params[:q]) }} //problem is here
  end
end

我点击此链接remote data load 加载远程数据 谁能帮我解决这个问题。谢谢你

【问题讨论】:

  • 如果不出意外,以合理的方式格式化代码会更容易推理。
  • 您的数据函数是一个不返回任何内容的函数,顺便说一句,您的 processResults 函数也是如此——可能不是您想要的。马特也想发布。
  • 是的,您的 data 函数中缺少 return 语句
  • @DaveNewton 谢谢。它就像一个魅力!

标签: ruby-on-rails ajax jquery-select2


【解决方案1】:

数据中缺少回报

$('.chosen-select').select2({  
   minimumInputLength:2,
   placeholder:"Search by Agency code, agent code, name or email",
   ajax:{  
      url:"/dashboard/agent_invitations/search_agents",
      dataType:'json',
      type:'GET',
      data:function (term)      {  
        return {   q:term  }
      },
      processResults:function (data)      {  
         results:data.results
      }
   }
});

【讨论】:

    猜你喜欢
    • 2020-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-07
    • 2010-12-05
    • 1970-01-01
    • 2013-05-03
    • 2017-10-31
    相关资源
    最近更新 更多