【问题标题】:Cannot get the input class using jQuery无法使用 jQuery 获取输入类
【发布时间】:2018-02-23 02:01:04
【问题描述】:

单击表单中的“重置为默认设置”按钮时,我想清除 4 个颜色选择器中的默认颜色。它们都有anyicon-form-colorpicker 类的输入类型文本字段。我所做的就是找到<a> 标签并使用.css() 函数清除他的style 标签。问题是下图的第三个元素没有被重置,我不知道为什么。这是我的 jQuery:

 $(document).on( 'click', '.anyicon-reset-button', function() {
     var inputs = $('#anyicon-live-style-form .anyicon-form-field');
     $.each(inputs, function(i, input){
         var split = $(input).attr('name').split('_')[1];
         $(input).val(default_values[split]);
         if ($(input).hasClass('anyicon-form-colorpicker')) {
             $(input).parent('.wp-picker-input-wrap').siblings('.wp-color-result').css('background-color', default_values[split]);
         }
     });
 });

还有 DOM 结构:

我 101% 确定所有 4 个元素都有所需的类。

【问题讨论】:

  • 可能不相关,但css类名不允许包含下划线。
  • 那么,你是说inputs 变量是空的吗?没有太多的html信息,不能给出太多的想法。这是哪里的anyicon-live-style-form
  • inputs变量是所有输入字段数据的变量,不为空。 anyicon-live-style-form 是表单的 id
  • default_values 是什么?
  • 这是默认颜色值,没错

标签: javascript jquery html class


【解决方案1】:

我不确定你从哪里得到#anyicon-live-style-form,但我在你发布的 DOM 结构中看不到它。你试过了吗

$(document).on( 'click', '.anyicon-reset-button', function() {
   var inputs = $('#anyicon_anycolor .anyicon-form-field');
   ...
 });

【讨论】:

  • 你的控制台有输出吗?
  • 嗯,没有。不知道这里发生了什么
  • 请发布您的相关 HTML,以便我们尝试模拟问题
  • 我们继续进入聊天室讨论吧?
  • 当然!来吧。
猜你喜欢
  • 1970-01-01
  • 2015-04-28
  • 2011-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-03
  • 1970-01-01
  • 2012-12-29
相关资源
最近更新 更多