Как отключить элементы формы с помощью jquery

У меня есть несколько элементов формы на странице, и у меня есть следующая кнопка для каждой формы. Я заполняю форму и нажимаю кнопку "Далее", чтобы перейти к следующей форме. Я хочу, чтобы после заполнения формы, когда пользователь нажимает следующую кнопку, он должен отключить все элементы предыдущих элементов.

Что я пробовал:
Я назначил уникальный id для всех форм и попытался следовать

$('form #firstFrm').find('input').attr('disabled','disabled');

Но это ничего не сделало.

$("#firstFrm> input").attr("disabled", true);

но не эффект.

$("#firstFrm :input").attr("disabled", true);

для этого вместо отключения элементов под form с id firstFrm это отключить элементы всех форм.

как отключить элементы только определенной формы.

HTML-код

<form action="" method="post">      
    <fieldset class="sectionwrap">
        <legend style="padding-right: 425px;">User Details</legend>
        <fieldset class="column" style= "width: 500px;margin-top: 10px;">
            <div id="firstFrm">
                <table style="padding-right: 20px; float: left"> 
                    <tr>
                        <td id="targetTD">
                            Username : <input id="email" type="email" name="email"/>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Password : <input id="password" name="password" type="password" class="text" />
                        </td>
                    </tr>
                    <tr>
                        <td>
                            password : <input id="confirmPassword" name="confirmPassword" type="password" class="text" />
                        </td>
                    </tr>
                </table>
            </div>
        </fieldset>

    </fieldset>
</form>

Решение

я создал div под form и положить все элементы в этом div и вместо отключения элементов под form Я отключил элементы под div, Это работало нормально.

3 ответа

Попробуйте с этим:

$( '#firstFrm input' ).attr ( 'disabled', true );

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

{ $( '#input' ).attr ( 'disabled', true ); }

$('form #firstFrm') будет искать форму с id="firstForm" который внутри другого <form> элемент

<form>
    <div>
        <form id="firstForm"></form>
    </div>
</form>

$("#firstFrm > input") получит только прямой <input/> дети формы

<form>
    <input />     // this is matched
    <div>
        <input/>  // this is not matched
    </div>
</form>

Чтобы получить все входные данные, попробуйте это:

$("input", $("#formId")).attr("disabled", true)

или же

$("#formId input").attr("disabled", true)
Другие вопросы по тегам