Javascript 将值传递给rails控制器的Ajax请求
我一天中的大部分时间都在努力想办法让它发挥作用。我正在使用bootstrap寻呼机方法为我一直在玩的语言学习网站提供“下一步”、“上一步”和“参加测验”按钮。我已经使用了javascript和ajax,这样当我单击按钮时,就不需要刷新页面,而且我还可以检测何时单击了某个特定的按钮 我遇到的困难是提交另一个ajax请求,将信息传递回rails控制器。例如,如果单击“下一步”按钮或“接受测验”按钮,则会增加一个变量,然后我需要使用该变量更新数据库和服务器端。“上一步”按钮执行相同的操作,但会使变量递减 这是我的JS:Javascript 将值传递给rails控制器的Ajax请求,javascript,jquery,ruby-on-rails,ajax,twitter-bootstrap,Javascript,Jquery,Ruby On Rails,Ajax,Twitter Bootstrap,我一天中的大部分时间都在努力想办法让它发挥作用。我正在使用bootstrap寻呼机方法为我一直在玩的语言学习网站提供“下一步”、“上一步”和“参加测验”按钮。我已经使用了javascript和ajax,这样当我单击按钮时,就不需要刷新页面,而且我还可以检测何时单击了某个特定的按钮 我遇到的困难是提交另一个ajax请求,将信息传递回rails控制器。例如,如果单击“下一步”按钮或“接受测验”按钮,则会增加一个变量,然后我需要使用该变量更新数据库和服务器端。“上一步”按钮执行相同的操作,但会使变量递
$(function() {
function nextHandler() {
gon.bookmark = gon.bookmark + 1; #using gon gem and bookmark is a column in my DB
}
function previousHandler() {
gon.bookmark = gon.bookmark - 1; #using gon gem and bookmark is a column in my DB
}
function takeQuizHandler() {
gon.bookmark = gon.bookmark + 1; #using gon gem and bookmark is a column in my DB
}
$(".Next").click(nextHandler);
$(".Previous").click(previousHandler);
$(".TakeQuiz").click(takeQuizHandler);
});
这是我的视图文件:
<div class="center hero-unit">
<%= @word.english %>, <%= @word.english_to_spanish %>
<% if @lastDigit == 0 %>
<ul class="pager">
<li class="Previous"><a href="/langs/<%= @wordBM - 1 %>">Previous</a></li>
<li class="TakeQuiz"><a href="/langs/<%= @wordBM + 1 %>">Take Quiz</a></li>
</ul>
<% elsif @lastDigit == 1 %>
<ul class="pager">
<li class ="Next"><a href="/langs/<%= @wordBM + 1 %>">Next</a></li>
</ul>
<% else %>
<ul class="pager">
<li class="Previous"><a href="/langs/<%= @wordBM - 1 %>">Previous</a></li>
<li class="Next"><a href="/langs/<%= @wordBM + 1 %>">Next</a></li>
</ul>
<% end %>
</div>
,
这是我的LAGS控制器:
class LangsController < ApplicationController
def show
@word = Lang.find(params[:id])
@wordBM = current_user.bookmark
gon.bookmark = @wordBM
digitArray = @wordBM.to_s.split('')
lastIndex = digitArray.length - 1
@lastDigit = digitArray[lastIndex].to_i
end
end
class LangsController
非常感谢您的任何帮助,如果我做得不对,请让我知道。我绝对是个疯子