【问题标题】:Calling Rails Helper from Javascript从 Javascript 调用 Rails 助手
【发布时间】:2016-09-26 17:02:15
【问题描述】:

我对 Rails 不太熟悉。

有没有办法从 Javascript 更新/创建 Rails 脚本?

我正在使用一个帮助程序来编辑图像并创建一个新的图像 URL。我在网页上有几张图片,但每张图片都有 3 个网址,根据屏幕尺寸/方向显示不同大小的图片。

我希望 Javascript 使用媒体查询来调用帮助程序并相应地更新 img srce,而不是为每个图像创建 3 个 divs/img 标签,从而为每个图像写出 3 次帮助行。

我精通 JS 和 JQuery,但对 Rails 几乎没有任何经验。

我已将脚本添加到 html 文件中:

<script>
    var test = <%= helper('https://url.com', :option1 =>1100, :option2 =>1300;) =%>

</script>

但这会返回控制台错误:SyntaxError: missing ; before statement

编辑:

另外,是否可以在helper的参数中添加JS变量?

 <script>
    var jsVariable1 = 1100
    var test = <%= helper('https://url.com', :option1 =>JsVariable1, :option2 =>1300;) =%>

    </script>

【问题讨论】:

    标签: javascript jquery ruby-on-rails helpers


    【解决方案1】:

    您是否尝试过将脚本更改为此。

    `

       var test = <%= helper('https://url.com', :option1 =>1100, :option2 =>1300) =%>;
    
    </script>`.
    

    您需要更改 ; 的位置就更新和创建而言。您需要使用强参数来更新哈希。下一个 您需要传递与名称、电子邮件、号码相同的参数,您需要将哈希传递为{name: "aditya", email: "nitbaditya@gmail.com", number: "1"}

    【讨论】:

    • 我之前在末尾添加了一个分号并得到了同样的错误。我用引号中的数字再次添加它,但仍然出现错误。这就是我现在所拥有的:-var test = &lt;%= helper('https://url.com', option1:"1100", option2:"1300") =%&gt;;
    • 看来问题是url中的冒号
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 2015-04-25
    • 2010-12-25
    • 1970-01-01
    相关资源
    最近更新 更多