Jquery表单重置

时间:2015-07-30 02:10:54

标签: javascript jquery tokenize

我有以下功能可以重置表单的一部分:

function changeForm(sel) {
    var arr = {
       "High-School Student": "hs",
       "University Student": "us"
    };
    $('#' + arr[sel]).show();
    delete arr[sel];
    $.each(arr, function (key, value) {
       var div = '#' + value;
       $(div).hide();
       $(div + ' :input').each(function () {
           $(this).val('');
       });
    });
}

根据另一个字段中的输入,我显示div与其相关的字段,并重置所有其他不相关的字段。某些字段具有数组类型的名称:name="field_name[]"。问题是,对于那些字段,$(this).val('');不会取消选择所选属性。此类型的字段为多选,并使用http://zellerda.com/projects/tokenize

2 个答案:

答案 0 :(得分:1)

我不知道这个插件是否有重置字段的功能,但我的解决方法是触发每个关闭点击:

假设这个HTML:

<div class="tokenize-sample Tokenize" id="tk1">
    <ul class="TokensContainer">
        <li class="Token" data-value="CH"><a class="Close">×</a><span>Switzerland</span></li>
        <li class="Token" data-value="FR"><a class="Close">×</a><span>France</span></li>
        <li class="Token" data-value="DE"><a class="Close">×</a><span>Germany</span></li>
        <li class="TokenSearch"><input size="5"></li>
    </ul>
    <ul class="Dropdown" style="display: none;"></ul>
</div>

我将执行此js:

$("#tk1 .Token .Close").trigger( "click" );

答案 1 :(得分:1)

因为组件生成UL而不是输入,标签中唯一的输入元素是带有'TokenSearch'类的输入

property_getAttributes()