jQuery-Autovervollständigung in der Klasse, wie man id
Habe ich schon eine Weile und kann nicht scheinen, um überall zu bekommen. Im Grunde habe ich die Autovervollständigung in einer Reihe von Eingaben, die durch die Klasse, aber ich brauche, um die bestimmten Eingaben-id-erstellen Sie das Objekt, um post-ajax (ich POST für dieses Projekt nicht BEKOMMEN).
$(".input_autocomplete").autocomplete({
source: function( request, response ) {
//here is where I get the hash from local storage,
//reference the id and build the object
//tried this.id, $(this).prop('id'), no luck
$.ajax({
url: '/somepath/filename.htm',
contentType: 'application/json',
dataType: 'json',
type: 'POST',
data: JSON.stringify(obj),
success: function(json) {
return {
label: item.label,
value: item.label
}
},
error: function() {
//error handling
}
}); //ajax
} //source
});
- Ich bin ganz neu bei jQuery aber, haben Sie versucht, mit attr('id') statt .prop('id')? Soweit ich weiß, die id ' s sind attr, nicht stützen... Auch, da bist du mit dot-syntax $(this) sollte der Weg zu gehen, da Ausrichtung auf das jQuery-Objekt. Hoffe, es löst das problem.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen:
oder:
Innerhalb der
source
Rückrufthis
bezieht sich auf die widget-Instanz. Um das element das widget angehängt ist, sollten Siethis.element
, ein jQuery-Objekt.this
im inneren des "AutoVervollständigen" ist der widget-Instanz, sothis.element
ist das element, dem er angewendet wurde.element.get(0)
wird das erste element ein jQuery-Objekt und entsprichtelement[0]
oben.this.element.prop('id')
. Ich denke, der Aufruf von jQuery überflüssig hier.Ich versuchte es in einem Projekt von mir. Dieser arbeitete für mich:
War ich in einer ähnlichen situation wie du,
user1572796
und das ist was für mich gearbeitet:Verbrachte ich nur eine Weile, piecing zusammen eine Lösung für diese selbst. Falls es hilft, das funktioniert für mich:
rufen Sie diese nach Ihrer Klasse vorhanden ist ( für die meisten ist das Dokument bereit ist, für mich, ich hatte zu rufen Sie diese Funktion auf, nachdem eine datatable initialisiert MyClassName)