ruby 如何使用JS 变量?
如下,accountParamter是 传递过来的值,我想在 <% %>中使用accountParamter,但是不可已直接使用,百度了一下都说ruby 中是不能直接使用js变量的,可是我觉的这是最基本的调用方式吧?难道真的不可已?ruby 中的变量 js 就可以通过过 var hh = <%= value %>调用呀。
function setNewValue(inputView,accountParamter) { <% defaultValue = accountParamter['_value'] para = accountParamter['_path'] %> <%if checkboxparamter.include?para%> <%if notcheckvalue.include?defaultValue%> inputView.checked = false; <% else%> inputView.checked = true; <%end%> <% else %> inputView.value='<%= defaultValue%>'; <%end%> }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你要先知道,JS是跑在客户端浏览器上的,而ruby是跑在服务器上的。所以ruby不能直接用js的变量,反过来js也不能直接用ruby的变量。
你所说的js ”用“ ruby变量的方式,实际上是用ruby生成了js以后,传输到客户端由浏览器执行的。这是一种非常危险的做法,有XSS的风险,你可以把你代码里的 defaultValue设成 '; alert('XSS');' (单引号是字符串的内容)试试。
所以你要在ruby里获取js的内容,也只能让js把内容发到服务器上,比如ajax,比如提交网页,都能做到。