2015-07-30 3 views
1

У меня есть следующие функции, которые должны сбросить часть формы:Jquery форма

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

ответ

1

, потому что компонент генерирует UL вместо ввода, и единственный входной элемент внутри вас г тег ввода с классом «TokenSearch»

$.each(arr, function (key, value) { 
    var div = '#' + value; 
    $(div).hide(); 
    $(div + ' :input').val(''); 
    $(div + ' .Token').remove(); 
}); 
+0

Это удалить тег, но выбор все равно остался выбранный таким образом '$ (Div +«.close») триггера («щелчок»);.' запускает плагин удалить событие. Спасибо за помощь !! – ppepii

+1

Вы правы. смешение ответов поможет: '$ (div + '.Close'). trigger ('click');' –

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"); 
Смежные вопросы