2013-11-26 3 views
0

У меня есть форма с кнопкой A и кнопка B. Он отправляется функцией jQuery, называемой нажатием одной из кнопок. В конце этой длинной функции, которая является проверка предпосылки, форма отсылается используя эту строку:Два способа обработки jQuery представленной формы

$('#wlform').submit(); 

Я хочу изменить этот код, чтобы отправить что-то, чтобы быть в состоянии различить, какая кнопка была нажата. Что-то в JavaScript похоже на <input type="submit" name="submitbutton1"/>

+0

какая кнопка A и B для? –

+0

Возможный дубликат [jQuery: как получить, какая кнопка была нажата при отправке формы?] (Http://stackoverflow.com/questions/5721724/jquery-how-to-get-which-button-was-clicked-upon- form-submission) – epascarello

+0

A публикует данные в реальном времени, B сохраняет их как черновик. –

ответ

0

Просто введите скрытый ввод значения атрибута id кнопки. Вы могли бы сделать что-то похожее на это (перед подать заявление):

$('input[type=hidden]').val($(this).attr('id')); 

Где $ (это) кнопка нажата.

0

Предоставьте нам код?

Я думаю, вы говорите о двух пуговицах, которые должны иметь свои собственные идентификаторы. Вы можете попробовать и поймать атрибуты идентификатора после нажатия на них;

$(this).attr('id'); 

Или измените 'id' на 'name', если вы хотите получить это значение.

0

Предположим, вы используете событие javascrit click для выполнения ваших функций javascript.

В JavaScript можно добавить скрытый вход в форму:

$(...).click(function() { 
    ... // Your code 

    var clicked_button = $(this); 
    $('#wlform').append($('<input type="hidden" name="clicked-button"/>').val(clicked_button.attr('id')); 

    $('#wlform').submit(); 
}); 

При том, что идентификатор clicked_button будет отправлен с формой.

+0

Нет необходимости добавлять скрытый ввод. Лучше поместить его в html-файл. –

+0

Правильно. Вы можете поместить пустое скрытое поле в html и обновить его с помощью javascript. – Magus

0

Ни один из ответов не работал, поэтому я сам что-то связал с ними. Я добавил скрытое поле ввода, clicked-button, как вы предложили. Затем, вызывая мою функцию precheck_submit, я передаю другой параметр (c) для сохранения, который был нажат. В функции precheck_submit я добавил $('#clicked-button').val(c);. Оно работает. В любом случае, спасибо за ваши усилия.

Смежные вопросы