2016-07-20 9 views
0

Ich benutze Pjax zum Laden einiger HTML nach dem Klicken in einen Link. Ich brauche einige benutzerdefinierte Daten an die URL auf den Link gesetzt senden:Pjax und jQuery

$(document).on('ready pjax:beforeSend', function(event, options) { 

    options['data'] = $('.fields-on-fly .form-control').serialize(); 

    return $.pjax.click(event,'',options); 
}); 

I beforeSend Ereignis So bin mit dem pjax vor Trigger zu fangen. Mein Problem tritt auf, wenn ich versuche, den Vorgang fortzusetzen, nachdem ich die Daten in die Optionen injiziert habe.

Ich habe einen Fehler:

TypeError: link.tagName is undefined 
if (link.tagName.toUpperCase() !== 'A') 
jquery....8767812 (line 82, col 1) 

Der Fehler bei der Rückkehr bei einem Anruf: $ .pjax.click

+0

ich googeln "pjax" und fand [eine github-Seite, die abstürzt ...] (https://github.com/defunkt/jquery-pjax). Was soll diese Bibliothek tun? –

+0

@PatrickRoberts Pjax ist Ajax + PushState, mit dem Sie die URL aktualisieren können, so dass Sie die Schaltfläche Zurück verwenden. Sie können weitere Informationen hier überprüfen: https://github.com/defunkt/jquery-pjax – Eduardo

Antwort

0

ich das Problem gefunden, müssen Sie nur die Optionen, mit den Daten ändern benötigt:

$(document).on('ready pjax:beforeSend', function(event, xhr, options) { 

    options.data = $('.fields-on-fly .form-control').serialize(); 

});