Справка jquery: скрытие кнопки отправки после отправки на обработку и изменение атрибута действия формы

Итак, вот проблема, с которой я столкнулся. Любая помощь очень ценится.

У меня есть форма с текстовым полем и кнопкой отправки. В process-page.php есть php-скрипт, который проверяет мою базу данных на наличие пользовательской информации и возвращает обработанные данные.

<form id="myform" aciton="process-page.php" method="post">
    <input type="text" id="checkinfo" name="checkinfo" />
    <input type="submit" value="check info" id="submit" />
</form>

Теперь, когда пользователь вводит информацию в текстовое поле и нажимает кнопку отправки, я использую ajax для отправки информации в process-page.php и отображения данных без загрузки страницы.

Данные, которые я получаю с помощью ajax, также содержат кнопку sumit (кнопку оплаты).

Это ответ, который я получаю от process-page.php

//html information along with payment button.
<h2>The user is currently available. Make a payment to join hands with the user.</h2>
<input type="submit" id="payment" value="make payment" />

Проблема в том, что у меня есть 2 кнопки отправки, одна рядом с текстовым полем с формой action="process-page.php" и другая кнопка отправки (кнопка оплаты), которая получена в качестве ответа от process-page.php

Теперь я хочу с помощью jquery скрыть кнопку отправки, когда пользователь отправляет форму.

Будет ли этот код работать?

$("#myfrom").submit(function(){
    //perform validation so that no numbers are entered.
    if(does not match){
        alert();
        return false;
    }
    //THe above performs the validation

    Now is this the correct method to hide submit button?

    if(true){
        $("submit").hide();
    }

});

Я хочу знать, правильный ли это способ скрыть кнопку отправки при выполнении проверки, и если все проверено, форма отправлена, а затем кнопка отправки скрыта.

Теперь я получил бы еще одну кнопку отправки (кнопку оплаты), и я хочу, чтобы атрибут действия формы был изменен следующим образом.

<form id="myform" aciton="make-payments.php" method="post">

Does, using this code works?

$("#form").attr('action', 'make-payments.php');

Изменит ли это атрибут действия. Помогите мне.


person SpiritOfDragon    schedule 03.06.2012    source источник
comment
где часть ajax? вы можете использовать методы beforeSend и ajaxSuccess.   -  person undefined    schedule 03.06.2012
comment
весь код выглядит нормально... почему бы вам просто не попробовать?   -  person Stefan Fandler    schedule 03.06.2012


Ответы (1)


нет, ваша строка кода скрытой кнопки не будет работать правильно.

проверьте селекторы jQuery, вы используете неправильный селектор

Теперь вы используете селектор элементов, поэтому все элементы отправки (у вас их нет, BTW) вы должны использовать селектор идентификаторов.

Это будет работать:

$("#submit").hide();
person Michael Zelensky    schedule 03.06.2012