jQuery-dodawanie dodatkowych parametrów przy wysyłaniu (nie ajax)
Używanie jQuery 'submit' - czy jest sposób na przekazanie dodatkowych parametrów do formularza? Nie chcę tego robić z Ajaxem - jest to normalne, odświeżające-typowe przesyłanie formularza.
$('#submit').click(function () {
$('#event').submit(function () {
data: {
form['attendees'] = $('#attendance').sortable('toArray').toString();
});
});
6 answers
Ten zrobił to dla mnie:
var input = $("<input>")
.attr("type", "hidden")
.attr("name", "mydata").val("bla");
$('#form1').append(input);
Opiera się na odpowiedzi Daffa, ale dodano atrybut NAME, aby pokazać go w kolekcji form i zmieniono wartość na VAL Sprawdziĺ ' em rĂłwnieĹź ID formularza (form1 w moim przypadku)
Użyto firebug Firefox, aby sprawdzić, czy element został wstawiony.
Ukryte elementy są wysyłane z powrotem do kolekcji formularzy, tylko pola tylko do odczytu są odrzucane.
Michel
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-10 06:56:11
W Twoim przypadku powinno wystarczyć dynamiczne dodanie kolejnego ukrytego pola do formularza.
var input = $("<input>").attr("type", "hidden").val("Bla");
$('#form').append($(input));
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-27 01:17:34
Możesz nawet użyć tego. działa dobrze dla mnie
$("#registerform").attr("action", "register.php?btnsubmit=Save")
$('#registerform').submit();
To prześle btnsubmit =Zapisz jako wartość GET do rejestru.formularz php.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-11 07:11:58
Możesz napisać funkcję jQuery, która pozwala na dodawanie ukrytych pól do formularza:
// This must be applied to a form (or an object inside a form).
jQuery.fn.addHidden = function (name, value) {
return this.each(function () {
var input = $("<input>").attr("type", "hidden").attr("name", name).val(value);
$(this).append($(input));
});
};
A następnie dodaj ukryte pole przed wysłaniem:
var frm = $("#form").addHidden('SaveAndReturn', 'Save and Return')
.submit();
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-26 11:24:14
Nie musisz wiązać zdarzenia submit po kliknięciu przycisku submit, po prostu zwiąż Zdarzenie submit, a przechwyci ono Zdarzenie submit bez względu na to, jak zostanie wyzwalane.
Pomyśl, czego chcesz, to złożyć sortowalny, jak byś za pośrednictwem ajax. Spróbuj zrobić coś takiego:
var form = $('#event').submit(function () {
$.each($('#attendance').sortable('toArray'),function(i, value){
$("<input>").attr({
'type':'hidden',
'name':'attendace['+i+']'
}).val(value).appendTo(form);
});
});
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-08 16:10:06
Podobna odpowiedź, ale chciałem ją udostępnić do łatwego / szybkiego testu.
var input = $("<input>")
.attr("name", "mydata").val("go Rafa!");
$('#easy_test').append(input);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
<form id="easy_test">
</form>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-15 00:46:57