Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.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
Rails 3.2中JQuery的问题_Jquery_Ruby On Rails_Ruby On Rails 3.2 - Fatal编程技术网

Rails 3.2中JQuery的问题

Rails 3.2中JQuery的问题,jquery,ruby-on-rails,ruby-on-rails-3.2,Jquery,Ruby On Rails,Ruby On Rails 3.2,我只是想让Jquery与我的rails应用程序一起工作 我想在新的.html.erb文件中放置一些JQuery,但在chrome的控制台中出现以下错误: Uncaught SyntaxError: Unexpected token ( 这是我的新的.html.erb: <% provide(:title, "New Stat") %> <% provide(:heading, "Welcome, #{ current_user.email }!") %> <

我只是想让Jquery与我的rails应用程序一起工作

我想在新的.html.erb文件中放置一些JQuery,但在chrome的控制台中出现以下错误:

 Uncaught SyntaxError: Unexpected token ( 
这是我的新的.html.erb:

<% provide(:title, "New Stat") %>
<% provide(:heading, "Welcome, #{ current_user.email }!") %>

<div id="stats-page-container">
  <div id="stat-form" >
    <div id="stat-form-inner"> 

    <% render 'layouts/init_stats_form' %> 
    <% render 'layouts/stat_input_form' %>

    <script>
       $.('#stat-form-inner').addClass('test-class');
    </script>

   </div>
 </div>
  <%= render 'layouts/progress' %> 
</div>
这是我的application.html.erb文件:

<html>
<head>
  <title><%= full_title(yield(:title)) %></title>    
  <h1> <%= yield(:heading) %> </h1>  
  <%= stylesheet_link_tag    "application", :media => "all" %>
  <%= csrf_meta_tags %>
</head>
<body>
  <% flash.each do |key, value| %>
    <%= content_tag(:div, value, class: "alert alert-#{key}")%>
  <% end %>

  <%= render 'layouts/header' %>

  <% if user_signed_in? %>
    <%= render 'layouts/subheader' %>
  <% end %>

  <%= yield %>
  <%= debug(params) if Rails.env.development? %>

  <%= javascript_include_tag 'application' %>  
</body>
</html>  
我还加了一句

<%= javascript_include_tag 'application' %>   

在结束主体标记的正上方

我还缺什么


谢谢

您正在结束body标记上方添加javascript\u include\u标记。这意味着您的脚本是在页面加载jquery之前执行的。将javascript包含标记调用移动到head标记,它应该可以工作。

您正在将javascript包含标记添加到结束body标记上方。这意味着您的脚本是在页面加载jquery之前执行的。将javascript_include_标记调用移动到head标记,它应该可以工作。

将脚本放入文件夹
app/assets/javascript
,确保使用
$(“…)
,而不是
$()


欢迎来到Rails

将脚本放入文件夹
app/assets/javascript
,确保使用
$(“..”)
,而不是
$()

欢迎来到Rails

  • 确保JQuery已正确加载。为此,请删除/注释$('#stat form inner').addClass('test-class'),并在FF/chrome中打开该应用程序,然后在Firebug控制台中键入$或jQuery。如果它打印function(),则jQuery已正确加载。如果它抛出一个错误引用错误,那么jQuery没有定义,那么jQuery框架就不会被加载

  • 如果JQuery加载正确,请尝试以下建议

    将此语句放在head标记内或视图/布局文件的顶部

    尝试下面的代码段将类添加到元素中,最好是在页面的末尾(即使在结束HTML标记之后也可以这样做)

    
    $(文档).ready(函数(){
    $('#stat form inner').addClass('test-class');
    });
    
  • 希望这有帮助

  • 确保JQuery已正确加载。为此,请删除/注释$('#stat form inner').addClass('test-class'),并在FF/chrome中打开该应用程序,然后在Firebug控制台中键入$或jQuery。如果它打印function(),则jQuery已正确加载。如果它抛出一个错误引用错误,那么jQuery没有定义,那么jQuery框架就不会被加载

  • 如果JQuery加载正确,请尝试以下建议

    将此语句放在head标记内或视图/布局文件的顶部

    尝试下面的代码段将类添加到元素中,最好是在页面的末尾(即使在结束HTML标记之后也可以这样做)

    
    $(文档).ready(函数(){
    $('#stat form inner').addClass('test-class');
    });
    

  • 希望这有帮助

    我认为$之后不需要“.”运算符。只需删除它并选中它,就会得到以下结果:uncaughtreferenceerror:$未定义新的:63(匿名函数)。我认为$之后不需要“.”运算符。只需删除它并选中它,就会得到以下信息:Uncaught ReferenceError:$未定义新的:63(匿名函数)我将此脚本直接添加到new.html.erb页面,以便以后可以使用AJAX。我将此脚本直接添加到new.html.erb页面,以便以后可以使用AJAX。这没有帮助。你能提供模板和布局的要点吗?还有任何错误。好的。我添加了更多文件包含的内容。这是我的应用程序目前唯一的错误。这没有帮助。你能提供模板和布局的要点吗?还有任何错误。好的。我添加了更多文件包含的内容。这是我的应用程序现在唯一的错误。是的,它做到了。我现在觉得自己很笨,哈哈!我将脚本放在元素中,而不是放在模板的末尾。。。这就是当你用太少的咖啡因或睡眠编写代码时会发生的情况:D谢谢你的帮助!是的,就是这样。我现在觉得自己很笨,哈哈!我将脚本放在元素中,而不是放在模板的末尾。。。这就是当你用太少的咖啡因或睡眠编写代码时会发生的情况:D谢谢你的帮助!
    // = require jquery
    // = require jquery_ujs
    // = require_tree .  
    
    <%= javascript_include_tag 'application' %>   
    
    <script type="text/javascript">
       $(document).ready(function() {
        $('#stat-form-inner').addClass('test-class');
       });
    </script>