jquery сбросить все поля ввода в массиве - PullRequest
0 голосов
/ 28 мая 2020

У меня есть поле выбора и функция, чтобы скрыть / показать div. Внутри этих div находятся поля ввода, которые я хочу сбрасывать каждый раз, когда делается другой выбор.

Этот скрипт очищает поля, пока я указываю каждый идентификатор поля.

<script>
$(document).ready(function(){
    $("#Main_Connection").change(function(){
    $('#InputFieldID').val("");
        $(this).find("option:selected").each(function(){
            var optionValue = $(this).attr("value");
            if(optionValue){
                $(".box").not("." + optionValue).hide();
                $("." + optionValue).show();
            } else{
                $(".box").hide();
            }
        });
    }).change();
});
</script>

Но я также сделал этот скрипт для получения всех идентификаторов полей, что, как я думаю, работает , потому что он показывает все идентификаторы в отладчике браузера.

<script type="text/javascript">
    $(document).ready(function ()
    {
    var AllFields = $("[id^=Main_] input");
    console.log(i, "Hello, world!");
    });
</script>

Простая замена $('#InputFieldID').val(""); на $('#AllFields').val(""); не работает. Как я могу заставить мой первый скрипт сбрасывать каждое поле, найденное вторым скриптом?

Ответы [ 2 ]

1 голос
/ 28 мая 2020

Если ваш селектор jQuery правильно выбирает все поля <input> для очистки, это должно очистить их:

$("[id^=Main_] input").val('')
1 голос
/ 28 мая 2020

Я не уверен, что это на 100% то, что вы ищете, но: попробуйте использовать each вокруг всех идентификаторов следующим образом:

$("[id^=Main_] input").each(function() {
     $(this).val("");
 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...