ReferenceError:$未定义函数错误

时间:2022-11-05 08:49:26

I'm getting trouble with my jquery script .Who's suppose to count the number of character on the old twitter way . i'm getting ReferenceError: $ is not defined pointing

我的jquery脚本遇到了麻烦。谁想要计算旧twitter上的字符数。我得到了ReferenceError:$未定义指向

$(function() {

here is the script by the way i'm on a rails app .

这是我在轨道应用程序上的脚本。

index.hml.erb

<% title "Welcome #{current_user.username}" %>

<script type="text/javascript">
    $(function() {
        $('#flit_message').keyup(function(){
            var content_lenght = $(this).val().length;
            var remaining = 140 - content_length
            $('#char_count').html(remaining);
        })
    })
</script>
<%= form_for Flit.new, :html => {:id => 'new_flit_form'}    do |f| %>
    <h3 style="float: left;">What are you doing?</h3>
    <h3 id="char_count" style="float: right;font-size: 23px; font-weight: bold; color: #aaa;">140</h3>
    <div class="clear"></div>
    <!-- <div id="new_flit_form"> -->
    <%=h f.text_area :message %>
    <div id="latest_message">
        <strong>Latest: </strong><%=h @last_flits.message %>
        <%= distance_of_time_in_words_to_now(@last_flits.created_at)%> ago
    </div>
    <div id="submit_button_container">
    <%=h f.submit "update", :class => "button"  %>
    </div>
    <div class="clear"></div>

    <!-- </div> -->
    <% end %>



    <ul id= "flits_list">
        <% @flits.each do |flit| %>
            <li<% if @flits.first == flit %> class="first"<% end %>>
            <%= image_tag flit.user.gravatar_url %>
            <div class="flit_message_container">
            <%=h link_to flit.user.username %>
              <%=h flit.message %>
            <div class="time_ago">
              <%= distance_of_time_in_words_to_now(flit.created_at)%> ago
            </div>
            </div>
            <div class="clear"></div>
            </li>
            <% end %>
    </ul>

here is the application.js file

这是application.js文件

// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
// or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
// GO AFTER THE REQUIRES BELOW.
//
//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require_tree .

html page source code

html页面源代码

<!DOCTYPE html>
<html>
  <head>
    <title>Welcome breanne</title>
    <link href="/assets/application.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/flits.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/home.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/welcome.css?body=1" media="screen" rel="stylesheet" type="text/css" />
    <script src="/assets/defaults.js" type="text/javascript"></script>
    <meta content="authenticity_token" name="csrf-param" />
<meta content="JnHvVRrW5Ts6TQf+D35OByvXxEY+Gl6P5NU5dVs8r3o=" name="csrf-token" />

  </head>
  <body>
    <div id="container">
      <h1>Welcome breanne</h1>

    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" >
        $(function() {
            $('#flit_message').keyup(function(){
                var content_lenght = $(this).val().length;
                var remaining = 140 - content_length;
                $('#char_count').html(remaining);
            })
        })
    </script>

1 个解决方案

#1


3  

99% of the time this means JQuery is not getting included into the page before this section. Where are you including it?

99%的时间这意味着在本节之前JQuery没有被包含在页面中。你在哪里包括它?

Include it like this inside the head tag

在head标签内包含它

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" />

See: http://jquery.com/download/

You probably want to uncomment the JQuery lines in that file (remove the //) When you load a page, view source and see if you can see the jquery include. If its not there your application isnt including it properly.

您可能想要取消注释该文件中的JQuery行(删除//)当您加载页面时,查看源代码并查看是否可以看到jquery包含。如果它不存在你的应用程序不适当包括它。

#1


3  

99% of the time this means JQuery is not getting included into the page before this section. Where are you including it?

99%的时间这意味着在本节之前JQuery没有被包含在页面中。你在哪里包括它?

Include it like this inside the head tag

在head标签内包含它

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" />

See: http://jquery.com/download/

You probably want to uncomment the JQuery lines in that file (remove the //) When you load a page, view source and see if you can see the jquery include. If its not there your application isnt including it properly.

您可能想要取消注释该文件中的JQuery行(删除//)当您加载页面时,查看源代码并查看是否可以看到jquery包含。如果它不存在你的应用程序不适当包括它。