代码之家  ›  专栏  ›  技术社区  ›  Jeremy Mullin

我应该在视图中放置HTML输入标记吗?

  •  0
  • Jeremy Mullin  · 技术社区  · 15 年前

    我不熟悉Rails,想知道我是否应该在视图中放入第二行代码:

    <%= text_field_tag 'new_ingredient' %>
    <input type=button ID="btnAddIngredient" Value="Add" onclick="addIngredient();" />
    

    或者我应该使用一个助手来生成标记?我知道表单和标签帮助器,但我不希望这个特定的按钮是表单提交按钮。它只是一个通过javascript操作某些项目的按钮。

    我猜我应该使用一个助手,但我仍然在尝试熟悉RailsAPI文档,似乎找不到我要找的东西。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Staelen    15 年前

    你可以使用 button_to_function ,像这样

    button_to_function "Add", :id => "btnAddIngredient", :onclick => "addIngredient();"
    

    希望有帮助=)

    详细信息如下: http://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html#M001757

        2
  •  3
  •   Kyle Daigle    15 年前

    根据您的方法,可能还值得注意的是,将JS函数调用放入点击事件中被认为是不好的形式,我相信它将在Rails3中逐渐消失。根据JS框架的不同,最好是监听按钮上的click事件,并根据该事件进行操作。

    使用jquery运行时,可以在视图中执行如下操作:

    <%= button_to "Add", :url => "#", :id => "btnAddIngredient" %>
    

    在application.js或其他js文件中:

    $("#btnAddIngredient").click(function() {
        addIngredient();
    });