2013-03-12 2 views
0

Может ли этот код влиять на другие кнопки отправки, которые не совпадают с идентификатором id = "form_data_voting"? Я предполагаю, что нет, не так ли? И 3-я строка просто влияет на код с идентификатором #form_data_voting, верно?JQuery - on-Function

jQuery('body').on('submit', '#form_data_voting', function() { 

var formContents = jQuery(this).serializeArray();   
var formSource = jQuery(this).find('input[type="submit"]').attr("alt"); 

Я сталкиваюсь с проблемами двумя плагин в WordPress, которые оба активированные и кнопка отправку другого плагина не работает правильно ...

Спасибо!

+0

Спасибо. Я понял это ... причина была моя JQuery 1.9.1, который я включен с этим кодом: // ВКЛЮЧАЕТ add_action ('wp_enqueue_scripts', функция() { \t $ myStyleFile = plugins_url («JS/jquery- 1.9.1.min.js ', __FILE__); \t wp_enqueue_script (' jquery_script ', $ myStyleFile, false,' 1.0 '); }); Но как я могу проверить, был ли JQuery уже включен в другие плагины ...? – Torben

ответ

1

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

И да, третья строка кода найдет только элементы отправки в указанной форме.

0

Вы можете заставить подавать, но это странно.

$('.your-other-submit').on('click', function(e) { 
    e.preventDefault(); 
    $('#form_data_voting').submit(); 
}); 

Он будет запускать ваш предыдущий код.

Вы даже можете получить некоторые другие внешние формы в пределах представить:

var otherFormContents = jQuery('#yourOtherForm').serializeArray(); 

Я согласен с @Archer КСТАТИ.

0

Да, это относится только к id = # form_data_voting. (включая третью строку)

В то же время, это не полный код, { должен быть закрыт.

, если он был, как этот

jQuery('body').on('submit', '#form_data_voting', function() { 

    var formContents = jQuery(this).serializeArray();   
    var formSource = jQuery(this).find('input[type="submit"]').attr("alt"); 
} 

Тогда это должно работать, как ожидалось. и да на ваши вопросы.