jQuery - включите дополнительные параметры, отправляют (НЕ ajax)

Используя jQuery 'отправляют' - там способ передать дополнительные параметры форме? Я НЕ надеюсь делать это с Ajax - это - нормальное, типичное для обновления представление формы.

$('#submit').click(function () {
    $('#event').submit(function () {
        data: { 
        form['attendees'] = $('#attendance').sortable('toArray').toString();
    });
});
198
задан GSerg 28 February 2013 в 05:21
поделиться

3 ответа

Этот сделал это за меня:

var input = $("<input>")
               .attr("type", "hidden")
               .attr("name", "mydata").val("bla");
$('#form1').append(input);

основан на ответе Даффа, но добавлен атрибут NAME, чтобы он отображался в коллекции форм, и изменен VALUE to VAL Также проверил идентификатор FORM (form1 в моем случае)

использовал firebug Firefox, чтобы проверить, был ли вставлен элемент.

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

Мишель

354
ответ дан 23 November 2019 в 05:12
поделиться

В вашем случае достаточно просто динамически добавить еще одно скрытое поле в вашу форму.

var input = $("<input>").attr("type", "hidden").val("Bla");
$('#form').append($(input));
26
ответ дан 23 November 2019 в 05:12
поделиться

Вам не нужно связывать событие отправки при нажатии кнопки отправки, просто привяжите событие отправки, и оно будет фиксировать событие отправки независимо от того, как это срабатывает.

Подумайте, чего вы хотите, так это отправить сортировку, как если бы вы делали это через ajax. Попробуйте сделать что-нибудь вроде этого:

var form = $('#event').submit(function () {
    $.each($('#attendance').sortable('toArray'),function(i, value){
        $("<input>").attr({
            'type':'hidden',
            'name':'attendace['+i+']'
        }).val(value).appendTo(form);
    });
});
11
ответ дан 23 November 2019 в 05:12
поделиться
Другие вопросы по тегам:

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