Java-скрипт форматирования Rails 3.1 - PullRequest
0 голосов
/ 22 октября 2011

Как я могу переместить JavaScript из application_helper.rb

В настоящее время у меня есть 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'] %>"

Ответы [ 2 ]

1 голос
/ 22 октября 2011

Rails 3.1 использует конвейер ресурсов и помещает JavaScript в app / assets / javascripts.Я еще не совсем знаком с этим, вы можете прочитать об этом здесь: http://guides.rubyonrails.org/asset_pipeline.html

Но почему этот javascript вообще помогает?Кажется, что он вообще не использует переменную «result».

0 голосов
/ 22 октября 2011

Поместите JavaScript в отдельный файл.Не смешивайте это с вашим HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...