【问题标题】:rails image_submit_tag x y valuesrails image_submit_tag x y 值
【发布时间】:2014-02-10 18:55:47
【问题描述】:

我正在尝试切换到使用 image_submit_tag 而不是 submit_tag 以便我可以拥有一个漂亮的按钮。但是参数列表越来越混乱:

<% form_tag 'reports', {:method => 'get'} do %>
    ...
    image_submit_tag("image.png", :name => 'filter')
    ...

这将转换为以下 HTML:

<form action="reports" method="get">
    ...
    <input name="filter" src="/images/add_filter.png?1391926927" type="image">
    ...

对我来说看起来不错,但是当调用控制器函数时,我得到了参数列表:

{"filter.y"=>"9", "filter.x"=>"9", "controller"=>"reports", "action"=>"index"} 

我使用名称来确定按下了哪个按钮。 x 和 y 值是如何合并到我的名字中的?它适用于常规的 submit_tag。

我发现this thread 涉及 x 和 y 值,但没有提及为什么它们会被合并到名称字段中。绝对奇怪。任何帮助表示赞赏!请不要对仍然使用 RoR 2.3 提出不相关的批评。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-2


    【解决方案1】:

    这不是很好,但我只是发现如果我同时指定它就可以正常工作

    :name => 'filter'
    

    :value => 'filter'
    

    如果我只指定一个或另一个,它就不起作用。而且我仍然得到 filter.x 和 filter.y 参数,所以这有点骇人听闻。如果有人知道这是为什么,或者有一个不那么骇人听闻的解决方法,我会选择你的答案而不是这个。

    【讨论】:

    • 也尝试了提交并指定:src,结果相同。似乎它发送点击位置的坐标,没有人关心为什么......
    • @AlexanderGorg W3C 关心为什么,这就是为什么他们将 x 和 y 参数作为查询字符串的标准部分在使用图像按钮时。您现在可能已经知道,这些是用户单击图像的笛卡尔坐标,从图像左上角的原点测量。你总是可以使用不同的标签并通过样式给它一个图像。
    • @MarsAtomic,非常感谢!这些 (x,y) 一直让我感到沮丧!
    猜你喜欢
    • 1970-01-01
    • 2013-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-01
    • 2011-12-01
    • 1970-01-01
    相关资源
    最近更新 更多