【问题标题】:iCheck - Checkboxes not reseting after form reset检查 - 表单重置后复选框不重置
【发布时间】:2022-12-18 13:57:33
【问题描述】:

在为这个问题浪费了 2 天时间后,我终于决定将其发布在这里,希望有人能帮助我。我使用“iCheck”(http://icheck.fronteed.com/),但也尝试过以大致相同的方式工作的类似库。我尝试以按钮的形式实现花哨的复选框——我想这很常见。

现在使用 iCheck 和我测试的其他库时,我总是遇到一个问题:我构建代码以发送 AjaxRequest 以处理表单中提供的数据,然后重置表单。除了这些复选框外,这工作起来非常整洁。如果我将它们更改为其他状态,它们不会被初始化(比如从 FALSE 到 TRUE)并重置表单,按钮在视觉上保持在该状态,直到您再次单击它。我的工作方式与“正常”复选框一样。

我重建了一个小测试页并将其放入 jsfiddle。这是一个错误还是我完全监督那里的东西?有人可以向我解释为什么会发生这种情况以及如何参与其中吗?

HTML:

<form id="form">
  <input type="checkbox" class="check_test" name="test" value="1"><label>Checkbox 1</label>
  <input type="checkbox"  name="test2" value="1"><label>Checkbox 1</label>
  <br/>
  <button type="reset" onClick="this.form.reset"> Reset </button>
</form>

Java脚本:

$(document).ready(function(){
  $('.check_test').each(function(){
    var self = $(this),
        label = self.next(),
        label_text = label.text();

    label.remove();
    self.iCheck({
      checkboxClass: 'icheckbox_line-blue',
      radioClass: 'iradio_line-blue',
      insert: '<div class="icheck_line-icon"></div>' + label_text
    });
  });
});

https://jsfiddle.net/p80dctkv

先感谢您。

【问题讨论】:

    标签: ajax forms checkbox reset icheck


    【解决方案1】:

    您可以像这样添加 js 以删除选中的 ichek

    $(":radio").prop('checked', false).parent().removeClass('checked');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-03
      • 2019-01-08
      • 2023-03-05
      • 2014-03-16
      • 2018-06-29
      • 1970-01-01
      • 2019-08-14
      • 1970-01-01
      相关资源
      最近更新 更多