Как передать несколько флажков с помощью jQuery ajax сообщение

Разница между оператором проекта (π) в реляционной алгебре и ключевым словом SELECT в SQL заключается в том, что если в результирующей таблице / наборе имеется более одного вхождения одного и того же кортежа, то π вернет только один из них, а SQL SELECT вернет все.

26
задан ahmed 26 May 2009 в 02:33
поделиться

4 ответа

Из документации jquery для POST ( 3-й пример ):

$.post("test.php", { 'choices[]': ["Jon", "Susan"] });

Так что я бы просто перебрал отмеченные поля и построил массив. Что-то вроде

var data = { 'user_ids[]' : []};
$(":checked").each(function() {
  data['user_ids[]'].push($(this).val());
});
$.post("ajax.php", data);
48
ответ дан 28 November 2019 в 06:13
поделиться

Если вы не настроены на развертывание собственного решения, попробуйте этот плагин jQuery:

malsup.com/jquery/form/

Он сделает это и многое другое за вас. . Настоятельно рекомендуется.

2
ответ дан 28 November 2019 в 06:13
поделиться

Можно использовать следующее, а затем расчленить результат публикации explode (",", $ _POST ['data']); , чтобы получить массив результатов.

var data = new Array();
$("input[name='checkBoxesName']:checked").each(function(i) {
    data.push($(this).val());
});
10
ответ дан 28 November 2019 в 06:13
поделиться

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

var data = { 'venue[]' : []};

$("input:checked").each(function() {
   data['venue[]'].push($(this).val());
});

Короче говоря, добавление input: checked в отличие от: checked ограничивает ввод полей в массив только флажками в форме. Пол действительно прав в том, что this необходимо заключить в виде $ (this)

16
ответ дан 28 November 2019 в 06:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: