如何在Ruby中访问JavaScript变量

时间:2018-01-29 22:00:05

标签: javascript html ruby-on-rails ruby

我试图做一些非常简单的事情,但我无法弄明白。如何在Ruby中访问本地JavaScript变量?或者,如果不可能,我可以在页面上找到idinp = document.getElementById("email").value; <% if User.pluck(:email).include? **JAVASCRIPT VARIABLE "INP"** then %> alert("found") <% end %> 的元素吗?我试图将其纳入以下内容:

body {
   margin: 0px;
}

感谢。

1 个答案:

答案 0 :(得分:0)

我不认为它可能因为Ruby是服务器端执行而javascript是客户端语言。但是你可以使用ajax将客户端变量(JS)传递给服务器并解决这种情况。

例如 - 使用小JS,您可以将客户端变量传递给服务器端并获得结果。

var email = $('#email').val();
$.post('/email_lookup?email='+email,function(data){
  console.log(data);
});

在Controller中,您可以定义一个操作,该操作将查找提供的电子邮件并返回json数据,无论电子邮件是否存在。

def email_lookup
  @user = User.where(email: params[:email]).try(:first)
  render json: {
    email_found: @user.present?
  }
end