validarea jQuery, trimiterea cu submitHandler

Am un formular HTML

<form method="POST" action="" name="myform" id="myform">
    <input type="text" name="email" id="email" />
    <input type="supmit" name="submit" id="submit"  value="submit" />
</form>

Și un cod de jQuery:

$(document).ready(function(){
    var validator = $("#myform").validate({
        ignore: ".ignore",
        rules: {...},
        messages: {...},
        submitHandler: function(form) {
            $.post('usr.php?resetpw', $(this).serialize(), function (data, textStatus) {
                form.submit();
                alert(data.inf);
            },'json');
        },
});

și cod PHP usr.php care nu primește variabilele $ _POST ( isset ($ _ POST ['email']) = false

if(isset($_GET['resetpw'])) {
    $loggingData = array(
        'inf' => utf8_encode("Your email address is: ".$_POST['email']),
        'errorEmail' => '',
        'mailExists' => '',
        'success' => '',
    );
}
echo json_encode($loggingData);

Ce este un cod corect care postă variabilele atinse în PHP?

Mulțumesc

0
Ce fel de logare ai făcut? Ați verificat solicitarea în instrumentele Firebug/Developer pentru a vedea dacă datele sunt trimise efectiv? Încercați $ ('# myform'). Serialize() , acest poate să nu se refere la formularul din interiorul acelei funcții.
adăugat autor Christian Varga, sursa
sau folosiți $ (form) .serialize()
adăugat autor Prasenjit Kumar Nag, sursa

3 răspunsuri

Serializați formularul nu acest . astfel submithandler va arata ca mai jos ..

submitHandler: function(form) {
        $.post('usr.php?resetpw', $(form).serialize(), function (data, textStatus) {
            form.submit();
            alert(data.inf);
        },'json');
},
0
adăugat
vă mulțumesc pentru răspunsuri
adăugat autor iff, sursa

I just checked the source of validate plugin from here http://jquery.bassistance.de/validate/jquery.validate.js

și sună submitHandler ca acesta

 validator.settings.submitHandler.call( validator, validator.currentForm );

Ceea ce înseamnă acest se va referi la object validator nu formularul , deci utilizați argumentul formular formați și serializați câmpurile de genul acesta

 $(form).serialize()
0
adăugat
$("#form_id").trigger('submit');

incearca asta

0
adăugat
JavaScript, România - Moldova
JavaScript, România - Moldova
328 participanți

Comunitatea Română JavaScript: github.com/js-ro Pentru confort, opriți notificările. Parteneri: @node_ro, @php_ro, @python_ro, @seo_ro, @RomaniaGroup, @ai_ro, @Grupuri_IT Offtop: @holywars_ro Joburi: @js_jobs_ro Sponsored with ❤️ by ciupacabra.com

PHP România, Moldova
PHP România, Moldova
173 participanți

Vorbim despre Yii, Laravel, Symphony, MySQL, PgSQL, WP, OpenCart... Pentru confort, opriți notificările. Parteneri: https://ciupacabra.com @js_ro @node_ro @python_ro @seo_ro @Romania_Bot Offtop: @holywars_ro Joburi: @php_job @Grupuri_IT