我的Rails 3项目中有以下Javascript View :

app/views/expenses/new_daily.js.erb

var i = parseInt($('#daily').attr('data-num')) + 1;
//$('#daily').append('agrego fila ' + i + ' <br />');

$('#daily').append('<%= escape_javascript(render(partial: 'new_expense', locals: { i: i })) %>');

$('#daily').attr('data-num', i);

我想通过本地人将我的'i'javascript变量传递给ruby部分,我该如何做到这一点?

最佳答案

据我所知,没有办法直接做到这一点,原因也很简单,html是在服务器端执行的,而javascript是一种客户端语言,这意味着它是在本地浏览器中执行的,这就是为什么即使尝试要在两者之间传递变量,您必须向服务器发出请求,
但是,可以通过调用AJAX请求来解决此问题,此AJAX请求的作用与向服务器发送新请求的作用相同,但是在不刷新或重新加载页面的情况下,它给用户带来了未提出请求的幻觉。

一个人问类似的问题Here

,您可以了解有关AJAX Here on MDN的更多信息:

10-07 16:56