从Ruby部分设置javascript变量
我有一个非常长的操作,以一个巨大的数组结束。该数组作为一个Ruby对象传递给一个js.erb文件,该文件使用它呈现一个片段:从Ruby部分设置javascript变量,javascript,ruby-on-rails,ruby,partial,Javascript,Ruby On Rails,Ruby,Partial,我有一个非常长的操作,以一个巨大的数组结束。该数组作为一个Ruby对象传递给一个js.erb文件,该文件使用它呈现一个片段: $('#xxx').html("<%= escape_javascript(render('part', testVar: @fromServer)) %>"); $('#xxx').html(“”); 这一切都进行得很顺利,但我希望能够对结果表中的列进行排序,而无需重新执行整个操作。这应该很容易,但我无法使partial中的结果变量保持不变。我的目标是能
$('#xxx').html("<%= escape_javascript(render('part', testVar: @fromServer)) %>");
$('#xxx').html(“”);
这一切都进行得很顺利,但我希望能够对结果表中的列进行排序,而无需重新执行整个操作。这应该很容易,但我无法使partial中的结果变量保持不变。我的目标是能够在部分中有一个脚本标记:
<script type="text/javascript">
$("#column").click(function(){
$.ajax({
type : 'POST',
url : '/sort_column',
data : {data: jsVar},
dataType : 'script'
});
});
</script>
$(“#列”)。单击(函数(){
$.ajax({
键入:“POST”,
url:“/sort_column”,
数据:{data:jsVar},
数据类型:“脚本”
});
});
我该怎么做呢?只要把你需要的ruby包起来就行了。就像这样:
data : {data: "<%= testVar %>"},
数据:{data:},
因为文档将被发送到ruby解释器,所以它将包含您的testVar值。此外,请使用蛇的情况下表示法,而不是骆驼的情况。这在ruby中是一个常见的协议。只需将ruby中需要的东西包装到中即可。就像这样:
data : {data: "<%= testVar %>"},
数据:{data:},
因为文档将被发送到ruby解释器,所以它将包含您的testVar值。此外,请使用蛇的情况下表示法,而不是骆驼的情况。在ruby中,这是一个普遍的共识。无论出于何种原因,脚本都无法呈现。Ruby中是否有一些关于在片段中呈现脚本的规则?如果您没有得到错误,那么您的控制器逻辑可能没有按照预期工作,并且没有使用js进行响应,您可以将控制器方法添加到问题中吗?无论出于何种原因,脚本都没有被呈现。Ruby中是否有一些关于在部分中呈现脚本的规则?如果您没有得到错误,那么您的控制器逻辑可能没有按照预期工作,并且没有用js响应,您是否可以在问题中添加控制器方法?