将JavaScript变量传递到Rails脚本中
以前可能有人问过这个问题,但我找不到任何可行的方法 我试图将一点信息传递到一个按钮中,该按钮将用户转发到另一个页面将JavaScript变量传递到Rails脚本中,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,以前可能有人问过这个问题,但我找不到任何可行的方法 我试图将一点信息传递到一个按钮中,该按钮将用户转发到另一个页面 function addMultiple(){ var id = $("#truck_company_id").val(); //dont really want to do this: //window.location.replace("http://www.website.com/companies/"+id+"/trucks"); //wa
function addMultiple(){
var id = $("#truck_company_id").val();
//dont really want to do this:
//window.location.replace("http://www.website.com/companies/"+id+"/trucks");
//want to do it this way so will work in development
window.location = <%= trucks_company_path(id) %>;
}
函数addMultiple(){
var id=$(“#卡车公司_id”).val();
//我真的不想这样做:
//window.location.replace(“http://www.website.com/companies/“+id+”/卡车”);
//如果你想这样做,那么它将在开发中发挥作用
window.location=;
}
我所需要做的就是在用户单击此按钮后将其引导到正确的网站
<button id="class-list" onclick="addMultiple()" class="btn btn-warning pull-right" style="margin: 0;">Add Multiple Trucks</button>
添加多辆卡车
将路径作为数据属性服务器端输出,然后从脚本中检索它
<button data-redirect-url="http://www.website.com/companies/xx/trucks" id="class-list addMultipleTrucks" class="btn btn-warning pull-right">Add Multiple Trucks</button>
$('#multipleTrucks').click(function(){
window.location = $(this).data('redirect-url');
});
添加多辆卡车
$('#multipleTrucks')。单击(函数(){
window.location=$(this.data('redirect-url');
});
Big Al Ruby新手,您不能将java脚本变量用于rails
因此,您可以使用“data”属性来获取URL,然后只需传递id即可。您可以使用字符串串联来摆脱Rails:
window.location = '/companies/' + id + '/trucks'
或者使用Gem,比如问题是ID发生了变化。。。它位于下拉列表中。。此外,这对开发也不是很友好。将卡车、公司、路径(id)的输出作为下拉列表中每个id/选项的数据重定向url。提交表单时,重定向到下拉列表中当前选定选项的数据重定向url。