【问题标题】:Java script formatting Rails 3.1Javascript 格式化 Rails 3.1
【发布时间】:2011-10-21 21:36:37
【问题描述】:

如何从 application_helper.rb 中移动 javascript

目前我在应用程序助手中有 javascripts

def js_field_formatter_phone()

 result = <<JS_DATE_FIELD_PHONE
 <script language="javascript" type="text/javascript">

  function js_field_formatter_phone(inputField) {
      var valueStr = inputField.value;
      var formattedStr = "";
      for (var i=0; i<valueStr.length; i++) {
          if (/^\\d/.test(valueStr.charAt(i))) {
              formattedStr += valueStr.charAt(i);
          }
      }
      inputField.value = formattedStr;
  }
 </script>
           JS_DATE_FIELD_PHONE
  return result
end

但此代码在我的视图中显示为原始 html

在我看来我已经

    <%= js_field_formatter_phone() %>

    <input type="text"
    name="billing_phone_number_home"
    size="30"
    maxlength="20"
    tabindex="<%= get_next_tabindex(@content_data) %>"
    onchange="js_field_formatter_phone(this);"
    value="<%= @content_data['billing_phone_number_home'] %>"

【问题讨论】:

    标签: javascript ruby-on-rails ajax ruby-on-rails-3.1


    【解决方案1】:

    Rails 3.1 使用资产管道并将 javascripts 放在 app/assets/javascripts 中。我对它还不是很熟悉,你可以在这里阅读: http://guides.rubyonrails.org/asset_pipeline.html

    但是为什么这个 javascript 在帮助器中呢?它似乎根本没有使用“结果”变量。

    【讨论】:

      【解决方案2】:

      将 JavaScript 放在一个单独的文件中。不要将它与您的 HTML 混在一起。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-21
        • 1970-01-01
        • 2011-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多