Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我会得到(“语法错误,无法识别的表达式:”&“x2B;msg”);当发布到自定义rails路由并通过AJAX传递参数时?_Javascript_Jquery_Ruby On Rails_Ajax - Fatal编程技术网

Javascript 为什么我会得到(“语法错误,无法识别的表达式:”&“x2B;msg”);当发布到自定义rails路由并通过AJAX传递参数时?

Javascript 为什么我会得到(“语法错误,无法识别的表达式:”&“x2B;msg”);当发布到自定义rails路由并通过AJAX传递参数时?,javascript,jquery,ruby-on-rails,ajax,Javascript,Jquery,Ruby On Rails,Ajax,我有一个Rails应用程序,它带有到我的SaleQualifiers控制器的自定义路由。此路线的目的是查找具有特定销售阶段的SaleQualifiers,并通过AJAX在面板中显示它们。按钮、路由和面板都工作得很好(即操作行为符合预期并呈现正确的结果),但我的RSpec测试不喜欢它,因为控制台会记录错误:语法错误,无法识别的表达式:“+msg,这会停止测试运行 我想我无论如何都应该修正这个错误,但我被卡住了,因为我不知道为什么会发生这种情况 我定义的新操作/路线称为潜在客户限定符: class

我有一个Rails应用程序,它带有到我的
SaleQualifiers
控制器的自定义路由。此路线的目的是查找具有特定销售阶段的
SaleQualifiers
,并通过AJAX在面板中显示它们。按钮、路由和面板都工作得很好(即操作行为符合预期并呈现正确的结果),但我的RSpec测试不喜欢它,因为控制台会记录错误:
语法错误,无法识别的表达式:“+msg
,这会停止测试运行

我想我无论如何都应该修正这个错误,但我被卡住了,因为我不知道为什么会发生这种情况

我定义的新操作/路线称为
潜在客户限定符

class SaleQualifiersController < ApplicationController
 before_action :set_sale_qualifier, only: [:show, :edit, :update, :destroy]
 def prospect_qualifiers
  @sales_opportunity = SalesOpportunity.find_by(id: session[:sales_opportunity_id])
  @stage = params[:sale_stage]
  ... etc - just picks out the right SaleQualifier(s) to render
end
这很好-它工作完美,将正确的信息呈现到面板中,并且与预期一样。但浏览器中的控制台显示:

Error: Syntax error, unrecognized expression: 

/sale_qualifiers/prospect_qualifiers?sale_stage=Budget


throw new Error( "Syntax error, unrecognized expression: " + msg );
这是我自己的语法错误(这些该死的JQuery错误的正常来源),还是我在沿着prospect\u qualifier\u sale\u qualifiers\u路径向AJAX提交中传递一个参数,从而犯了一些根本性的错误

欢迎任何帮助

编辑-添加选项卡和限定符面板

<% if stage == @stage %>
<li class="active"><%= link_to stage, prospect_qualifiers_sale_qualifiers_path(:sale_stage => stage), :remote => true, data: { disable_with: "Loading...", toggle: 'tab' } %></li>
<% else %>
    <li><%= link_to stage, prospect_qualifiers_sale_qualifiers_path(:sale_stage => stage), :remote => true, data: { disable_with: "Loading...", toggle: 'tab' } %></li>
<% end %>

  • stage),:remote=>true,数据:{disable_with:“Loading…”,切换:'tab'}%>
  • 阶段),:remote=>true,数据:{disable_with:“Loading…”,切换:'tab'}%>
  • 专家组:

    <% if stage ==  @stage %>
    
    
    <div class="tab-pane active" id='<%=stage %>'>
            <table class="table table-striped display responsive no-wrap">
                     <thead>
                      <tr>
                         <th>Question</th>
                         <th>Answer</th>
                         <th>Action</th>
                      </tr>
                     </thead>
                     <tbody>
                     <!-- if a sale_qualifier exists with an answer show the following -->
                      <% @sale_qualifiers.each do |qual| %>
                      <tr>
                        <td><%= qual.question.question_text %></td>
                        <% if qual.question.answer_type == "Datetime"%>
                            <td><%= qual.answer.answer_text.to_date.readable_inspect %></td>
                        <% elsif qual.question.answer_type == "Boolean" %>
                            <% if qual.answer.answer_text == 'true'%>
                                <td>Yes</td>
                            <% elsif qual.answer.answer_text == 'false' %>
                                <td>No</td>
                            <% end %>
                        <% else %>
                            <td><%= qual.answer.answer_text %></td>
                        <% end %>
                        <td><%= link_to('edit', edit_sale_qualifier_path(qual), class: "btn btn-sm btn-warning", data: { disable_with: "Loading...", dismiss: 'modal' }, :remote => true )%></td>
                      </tr>
                      <% end %>
                      <!-- if there's no sale_qualifier with the question id then build one -->
                        <%= form_tag('/sale_qualifiers', :id => 'new_sale_qualifier', :class => 'form', method: :post, remote: true, data: { model: "sale_qualifier" }) do -%>
                            <%= fields_for :sale_qualifier do |ff| %>
                                <%= ff.hidden_field :sales_opportunity_id, :value => @sales_opportunity.id, form: "new_sale_qualifier" %>
                                <%= ff.hidden_field :question_id, :value => @question.id, form: "new_sale_qualifier" %>
                              <tr>
                                <td><%= @question.question_text %></td>
                                <td>
                                  <%= ff.fields_for :answer_attributes do |answer| %>  
                                    <div class="form-group">
                                      <% if @question.answer_type == 'Text Field' %>
                                        <%= answer.text_area :answer_text, :placeholder => "Enter your answer", form: "new_sale_qualifier"%>
                                      <% end %>
                                      <% if @question.answer_type == 'Datetime' %>
                                        <div class='input-group date' id='datetimepicker' data-date-format="YY.MM.DD">
                                          <%= answer.text_field :answer_text, class: "form-control", data: { date_format: 'YYYY/MM/DD' }, :placeholder => "YYYY/MM/DD", form: "new_sale_qualifier" %>
                                          <span class="input-group-addon">
                                            <span class="glyphicon glyphicon-calendar"></span>
                                           </span>
                                        </div>
                                      <% end %>
                                      <% if @question.answer_type == 'Boolean' %>
                                        <%= answer.select :answer_text, [['Yes', true], ['No', false]], form: "new_sale_qualifier" %>
                                      <% end %>
                                      <span class="warning-block"></span>
                                      <span class="help-block"></span>
                                     </div>
                                  <% end %>
                                </td>
                                <td>
                                    <%= submit_tag "Submit", class: "btn btn-large btn-success", id: "sale_qualifier_submit", data: { disable_with: "Submitting..." }, autocomplete: 'off', form: "new_sale_qualifier" %>
                                </td>
                             </tr>
                            <% end %>     
                        <% end %>   
                    </tbody>
                </table>
        </div>
    <% else %>
        <div class="tab-pane" id='<%=stage %>'>
        </div>
    <% end %>
    
    
    问题:
    答复
    行动
    对
    不
    正确)%%>
    'new_sale_qualifier',:class=>'form',method::post,remote:true,data:{model:'sale_qualifier})do-%>
    @sales\u opportunity.id,表单:“new\u sale\u qualifier”%>
    @问题id,表格:“新销售限定符”%>
    “输入您的答案”,表格:“新的销售资格”%>
    “YYYY/MM/DD”,表格:“新销售限定符”%>
    
    我自己也会深入研究这段代码,以防万一我能看到空白的来源。我讨厌在Jquery中调试这样的东西


    作为参考,我使用jQueryRails(3.1.2)

    您的共享/选项卡或共享/面板中有什么?可能有一些空白或其他字符不应该在那里。它必须以“Thank@RalphKing”开头-我已经添加了请求的信息,并将自己尝试取消空白。正如您所看到的,这部分中呈现了大量代码,因此可能需要一些时间。
    Error: Syntax error, unrecognized expression: 
    
    /sale_qualifiers/prospect_qualifiers?sale_stage=Budget
    
    
    throw new Error( "Syntax error, unrecognized expression: " + msg );
    
    <% if stage == @stage %>
    <li class="active"><%= link_to stage, prospect_qualifiers_sale_qualifiers_path(:sale_stage => stage), :remote => true, data: { disable_with: "Loading...", toggle: 'tab' } %></li>
    <% else %>
        <li><%= link_to stage, prospect_qualifiers_sale_qualifiers_path(:sale_stage => stage), :remote => true, data: { disable_with: "Loading...", toggle: 'tab' } %></li>
    <% end %>
    
    <% if stage ==  @stage %>
    
    
    <div class="tab-pane active" id='<%=stage %>'>
            <table class="table table-striped display responsive no-wrap">
                     <thead>
                      <tr>
                         <th>Question</th>
                         <th>Answer</th>
                         <th>Action</th>
                      </tr>
                     </thead>
                     <tbody>
                     <!-- if a sale_qualifier exists with an answer show the following -->
                      <% @sale_qualifiers.each do |qual| %>
                      <tr>
                        <td><%= qual.question.question_text %></td>
                        <% if qual.question.answer_type == "Datetime"%>
                            <td><%= qual.answer.answer_text.to_date.readable_inspect %></td>
                        <% elsif qual.question.answer_type == "Boolean" %>
                            <% if qual.answer.answer_text == 'true'%>
                                <td>Yes</td>
                            <% elsif qual.answer.answer_text == 'false' %>
                                <td>No</td>
                            <% end %>
                        <% else %>
                            <td><%= qual.answer.answer_text %></td>
                        <% end %>
                        <td><%= link_to('edit', edit_sale_qualifier_path(qual), class: "btn btn-sm btn-warning", data: { disable_with: "Loading...", dismiss: 'modal' }, :remote => true )%></td>
                      </tr>
                      <% end %>
                      <!-- if there's no sale_qualifier with the question id then build one -->
                        <%= form_tag('/sale_qualifiers', :id => 'new_sale_qualifier', :class => 'form', method: :post, remote: true, data: { model: "sale_qualifier" }) do -%>
                            <%= fields_for :sale_qualifier do |ff| %>
                                <%= ff.hidden_field :sales_opportunity_id, :value => @sales_opportunity.id, form: "new_sale_qualifier" %>
                                <%= ff.hidden_field :question_id, :value => @question.id, form: "new_sale_qualifier" %>
                              <tr>
                                <td><%= @question.question_text %></td>
                                <td>
                                  <%= ff.fields_for :answer_attributes do |answer| %>  
                                    <div class="form-group">
                                      <% if @question.answer_type == 'Text Field' %>
                                        <%= answer.text_area :answer_text, :placeholder => "Enter your answer", form: "new_sale_qualifier"%>
                                      <% end %>
                                      <% if @question.answer_type == 'Datetime' %>
                                        <div class='input-group date' id='datetimepicker' data-date-format="YY.MM.DD">
                                          <%= answer.text_field :answer_text, class: "form-control", data: { date_format: 'YYYY/MM/DD' }, :placeholder => "YYYY/MM/DD", form: "new_sale_qualifier" %>
                                          <span class="input-group-addon">
                                            <span class="glyphicon glyphicon-calendar"></span>
                                           </span>
                                        </div>
                                      <% end %>
                                      <% if @question.answer_type == 'Boolean' %>
                                        <%= answer.select :answer_text, [['Yes', true], ['No', false]], form: "new_sale_qualifier" %>
                                      <% end %>
                                      <span class="warning-block"></span>
                                      <span class="help-block"></span>
                                     </div>
                                  <% end %>
                                </td>
                                <td>
                                    <%= submit_tag "Submit", class: "btn btn-large btn-success", id: "sale_qualifier_submit", data: { disable_with: "Submitting..." }, autocomplete: 'off', form: "new_sale_qualifier" %>
                                </td>
                             </tr>
                            <% end %>     
                        <% end %>   
                    </tbody>
                </table>
        </div>
    <% else %>
        <div class="tab-pane" id='<%=stage %>'>
        </div>
    <% end %>