Я слежу за RailsCasts # 240 за добавление ajax к моему представлению. По сути, проблема, с которой я столкнулась сейчас, заключается в том, что URL-адрес все еще меняется, когда я сортирую столбец таблицы или перехожу на следующую страницу индекса. Я следил за рельсами, точно, не уверен, что я делаю неправильно. У кого-нибудь есть идеи?Ajax url все еще меняется
application.js
//= require jquery
//= require jquery_ujs
$(function() {
$("#network th a, #network .pagination a").live("click", function() {
$.getScript(this.href);
return false;
});
});
index.html.erb
<h1>Network</h1>
<div class ="network">
<div class="network-body">
<div id="network"><%= render 'network' %></div>
</div>
</div>
<br>
index.js.erb
$("#network").html("<%= escape_javascript(render("network")) %>");
Gemfile
source 'https://rubygems.org'
ruby '2.1.2'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.4'
# Use sqlite3 as the database for Active Record
group :development do
gem 'sqlite3'
end
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.3'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'jquery-rails', '>= 3.0.4'
gem 'turbolinks', '>= 1.1.1'
gem 'jbuilder', '~> 2.0'
gem 'bcrypt', '~> 3.1.7'
gem 'devise', '~> 3.3.0'
gem 'orm_adapter', '~> 0.5.0'
gem 'warden', '~> 1.2.3'
gem 'protected_attributes', '~> 1.0.8'
gem 'simple_form', '~> 3.0.2'
gem 'will_paginate', '~>3.0.7'
gem 'bootstrap-will_paginate', '~> 0.0.10'
gem 'ancestry', '~> 2.1'
gem 'whenever', require: false
gem 'geocoder', '~> 1.2'
group :doc do
gem 'sdoc', '~> 0.4.0', require: false
end
group :production do
gem 'pg', '~> 0.17.1'
gem 'rails_12factor', '~> 0.0.2'
end
'.live' осуждается. попробуйте '$ (document) .on (" click "," #network th a, #network .pagination a ", function()'. Вам также может потребоваться передать переменные этой функции 'getScript', чтобы привязать возвращаемые значения к 'function (data, textStatus, jqxhr)', например. Хотя, я обычно использую '$ .ajax', поскольку у вас есть немного больше контроля над ним. – Dudo
Не уверен, что я понимаю, извините за вопрос новичков, но вы говорите, что я должен заменить $ (function) на $ (document) или $ .ajax? Можете ли вы дать мне пример того, что вы подразумеваете под переменными, используя код, который у меня выше? –