Отключите отправку формы, пока поля не будут проверены с помощью jQuery

0

Я изменил этот скрипт http://jsfiddle.net/mblase75/xtPhk/1/, чтобы отправить форму. Цель состоит в том, чтобы отключить кнопку отправки, пока все поля формы не будут проверены. Это работает отлично в первый раз, но поскольку в моей форме нет действия jquery, также обрабатывает submit.

Поэтому после того, как я отправлю форму, кнопка отправки не отключается. Я должен обновить страницу, чтобы она отключилась.

То, что я пытаюсь сделать, после каждого сообщения. Кнопка отправки должна быть отключена, без обновления страницы.

Это возможно?

Он работает, если в моей форме есть страница действий. но я не хочу этого

Форма Отправить:

       $(document).ready(function() {
    $("#paForm").submit(sendForm)
    });

   function sendForm() {
      $.post('pa_submit.cfm',$("#paForm").serialize(),function(data,status){
    $("#result").html(data)
});// end of submit 
$( '#paForm' ).each(function(){
      this.reset(); // end of reset 
  });
return false
  }

Отключить кнопку отправки до тех пор, пока все поля не будут проверены

       $(document).ready(function() {
       $form = $('#paForm'); // cache
       $form.find(':input[type="submit"]').prop('disabled', true); // disable submit btn
      $form.find(':input').change(function() { // monitor all inputs for changes
    var disable = false;
       $form.find(':input').not('[type="submit"]').each(function(i, el) { // test all inputs for values
            if ($.trim(el.value) === '') {
            disable = true; // disable submit if any of them are still blank
           }
        });
         $form.find(':input[type="submit"]').prop('disabled',disable);
      });
    });

Я использую функцию jquery для отправки моих значений в базу данных. У моей формы нет действия.

http://jsfiddle.net/bC6GF/

Вот страница jsfiddle, которая показывает мою проблему.

  • 0
    Пожалуйста, отформатируйте ваш код правильно. Это облегчает чтение и помогает другим.
  • 0
    Если я правильно понимаю ваш вопрос, не можете ли вы использовать кнопку вместо кнопки отправки и использовать ajax для нажатия кнопки для публикации данных в базе данных?
Показать ещё 1 комментарий
Теги:
coldfusion
form-submit

1 ответ

2
Лучший ответ

Почему бы не отключить кнопку после отправки?

У вас уже есть функция отправки:

function sendForm() {
 $.post('pa_submit.cfm',$("#paForm").serialize(),function(data,status){
  $("#result").html(data)
 });// end of submit 
 $( '#paForm' ).each(function(){
  this.reset(); // end of reset 
 });
 return false;
}

Продлить с вызовом кнопки отправки, чтобы отключить его:

function sendForm() {
 $.post('pa_submit.cfm',$("#paForm").serialize(),function(data,status){
  $("#result").html(data)
 });// end of submit 
 $( '#paForm' ).each(function(){
  this.reset(); // end of reset 
 });
 $("#paForm").find(':input[type="submit"]').prop('disabled', true); 
 return false;
}

Это должно отключить кнопку после каждой отправки.

Не связанные, но что-то, что вы можете захотеть изучить, это jQuery JavaScript Style Guides и очистка некоторых из вашего кода.

  • 0
    Спасибо, это сработало. И да, я делаю все возможное, чтобы очистить код

Ещё вопросы

Сообщество Overcoder
Наверх
Меню