javascript - ROR + 从文本字段中检测类名并将其替换为另一个

标签 javascript html css class

在 Ruby 代码的 TextField 中,我想在模糊事件中检查指定的类是否被应用。请建议一些技术或方法。下面给出了我使用的示例代码。

TextField 的 Ruby 代码::

    <%=f.text_field :Username, :size=>4, :tabindex=>2, :class=>class_name, 
:autocomplete => "off", :onblur=> $$$$$ %>

假设 class_name:'changeView' 应用于上面的文本字段,那么我必须检测这个特定的类并替换为另一个类,如 'changeExtraview'。通过使用任何 javascript,我们可以替换该类名,但建议您是否有更好的选择。

谢谢

最佳答案

只是一个猜测的答案...

所以你的 class_name可能包含值 changeView ,如果在这种情况下,您想替换 changeView类名到changeExtraview ,对吧?

如果是,那么下面应该没问题:

<%=f.text_field :Username, :size=>4, :tabindex=>2, :class=>class_name.gsub(/changeView/, "changeExtraview"), :autocomplete => "off", :onblur=> $$$$$ %>

========================

另一个尝试:

<%=
  f.text_field :Username, :size=>4, :tabindex=>2, :class=>class_name, :autocomplete => "off",
    :onblur => "if($(this).hasClass('changeView')) {$(this).removeClass('changeView'); $(this).addClass('changeExtraview')}"
%>

========================

正如@Faisal 指出的那样,在 JS 端使用绑定(bind)会更好。虽然很久以前的答案了,但我决定再次更新答案:

<%= f.text_field :Username, :size => 4, :tabindex => 2, :class => class_name, :autocomplete => "off" %>

并以任何方式(我在本例中使用 content_for),添加以下 js 代码:

<%= content_for :javascripts do %>
  <script type="text/javascript">
    jQuery(document).ready(function($) {
      $("<%= class_name %>").bind("blur", function() {
        var $this = $(this);
        if ($this.hasClass('changeView')) {
          $this.removeClass('changeView');
          $this.addClass('changeExtraView');
        }
      });
    });
  </script>
<% end %>

请注意,以上代码要求您拥有 <%= yield :javascripts %>在你的布局文件中,

关于javascript - ROR + 从文本字段中检测类名并将其替换为另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4311413/

相关文章:

javascript当null时跳转到下一条记录代码修改

javascript - 如何将库发布到 npm 并可与 import 和 require 一起使用?

javascript - 从 Laravel 对象中获取对象

javascript - 当我有 allMarkdownRemark 时, Gatsby 一直提示无法在类型 "fields"上查询字段 "MarkdownRemark"

javascript - 从应用了 'overflow: scroll/auto' 样式的 div 中删除可拖动元素?

html - 这个 HTML 有效吗?

html - 如何去除径向渐变中的边框,使其能够很好地混合?

html - 背景图片不会显示在 div 中

css - WP + super 鱼 : Parent Menu Item not keeping text-shadow while children are being hovered

html - DIV 高度不起作用,尽管有明确的 :both