从 jQuery Mobile 重置值

Posted

技术标签:

【中文标题】从 jQuery Mobile 重置值【英文标题】:Reset values from jQuery Mobile 【发布时间】:2012-11-25 18:46:32 【问题描述】:

我需要重置我页面的所有字段元素的值。元素是:输入、选择(组合框)、复选框和单选组。 搜索发现如下代码:

$("*").attr('value', '');
$("input[type='checkbox']").attr("checked",false); 

$('select').each(function() 
    if($(this).children().length > 0) 
        $($(this).children()[0]).attr('selected', 'selected');
        $(this).change();
    
);

此代码的输入和复选框都可以,但其他组件在测试的代码中存在问题。广播组需要或采取任何一种选择,或至少选择第一种。组合框会使用此代码重置,但在尝试选择新值时,它不会存储您的值。

谢谢!

【问题讨论】:

【参考方案1】:

非文本输入需要刷新。这是一个这样做的例子:

//reset text input values, then refresh slider widgets
$(".ui-input-text").val('').filter('.ui-slider-input').slider('refresh');

//reset checkboxes and radio inputs, then refresh them
$(".ui-checkbox input[type='checkbox'], .ui-radio input[type='radio']").prop("checked", false).checkboxradio("refresh"); 

//reset all select menus and then refresh them
$('.ui-select select').val('').selectmenu('refresh');
return false;

这是一个演示:http://jsfiddle.net/MLewd/1/

【讨论】:

朋友你好!感谢你们对我的帮助!但是,您的代码遇到了与我相同的问题……现在一切正常。但是当尝试在任何收音机上选择一个新项目并选择发出警报以检查其值时,该值是“丢失”。 jsfiddle.net/MLewd/15 抱歉,朋友在这里进行了更多测试,但如果我尝试使用警报进行检查,您的代码可以正常工作。 val() 或选择单选返回我“未定义”。但不知何故,选定的值在那里。很奇怪!

以上是关于从 jQuery Mobile 重置值的主要内容,如果未能解决你的问题,请参考以下文章

如何使用自定义类一次重置 jquery mobile 中的多个下拉列表

从文本框中使用 jquery mobile 填充下拉列表

jQuery Mobile 表单滑动条

jQuery Mobile 表单滑动条

jQuery Mobile 主题

jQuery Mobile 主题