【问题标题】:jQuery jPicker reset completelyjQuery jPicker 完全重置
【发布时间】:2011-11-27 06:08:35
【问题描述】:

如果有人使用过 jPicker,我真的很想得到一些帮助。我在表单中有一个 jPicker 输入框,当我使用 Ajax 发布表单时,我尝试将表单重置为原始值。除了我不知道如何将 jPicker 框重置为原始状态之外,有谁知道如何做到这一点?

【问题讨论】:

    标签: jquery forms reset


    【解决方案1】:

    jPicker$.jPicker.List[] 数组中维护其控件的信息。要删除与控件的 jPicker 关联,您需要销毁其在 $.jPicker.List[] 数组中的相应条目。

    遍历数组中的项目列表以找到引用控件的项目

    $.jPicker.List[index].id
    

    当你在数组中找到你的控件时,用

    销毁它
    $.jPicker.List[index].destroy()
    

    销毁数组元素后,您需要删除与控件关联的 SPAN jPicker html 对象。如果只有一个你可以

    $('span.jPicker').remove()
    

    否则您将需要发现特定的 html 元素

    $(rowParent).find('span.jPicker').remove();
    

    可选:如果您使用类引用与 id 引用,请使用 .data() 函数标记您的控件并使用以下语句检索唯一值

    $( $.jPicker.List[index] ).data()
    

    【讨论】:

      【解决方案2】:

      您可以尝试解除 jPicker 与元素的绑定,然后在要重置它后重新绑定它,应该将其恢复为默认设置。

      【讨论】:

      • 我试过了,但是 jPicker 为所有内容添加了大量的元素和样式,所以我只是想弄清楚如何在不编写代码的情况下做到这一点。但说真的,jPicker 没有自己的方法吗?
      • 不是我从文档中看到的
      【解决方案3】:

      如上所述,您可以尝试这样的事情:

      var id =$.jPicker.List[i].id; //getting the id of the element you've binded jpicker with
      $.jPicker.List[i].destroy(); //destroying the instance in the jPicker List
      $("#"+id).parent().find('span.jPicker').remove(); // destroying the span containing the graphical jPicker
      $("#"+id).jPicker(); // And finally reinstancing the jPicker instance on your element
      

      它应该让你的选择器闪烁(删除然后重新创建)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-08-27
        • 2019-04-30
        • 1970-01-01
        • 2014-07-09
        • 2015-05-07
        • 2021-05-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多