Dynamisch Holen Sie die URL für die JQuery-Ajax-request vom Data-Attribut
Ich habe ein JQuery-Autocomplete-Funktion, die ich brauche, um in der Lage sein, um übergeben Sie einen url ein. Ich bin versucht, ziehen Sie die url aus dem html-Daten-url-Attribut, allerdings bin ich derzeit immer eine variable ist undefined Meldung in der JavaScript-Konsole, so dass ich weiß, ich bin nicht immer die Werte, die ich erwarten. Ich habe meinen code unten. Jegliche Hilfe würde sehr geschätzt werden.
JQuery-Funktion:
$(function () {
$(".autocomplete").autocomplete({
delay: 0,
source: function (request, response) {
var baseURL = $(this).data("url");
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
url: baseURL + request.term,
dataType: "json",
success: function (data) {
response(data)
}
});
},
minLength: 1,
});
HTML-Element:
<td style="width: 90%">
<label for="tag_Name" class="inline">Server Tags: </label>
<input class="fixed autocomplete" type="text" id="tag_Name" placeholder="Type tags to add..." data-url="/RequestFieldValues/GetLikeResourceTags/?prefix=" />
</td>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, diese stattdessen...
Ich habe die
.autocomplete()
innerhalb einereach()
- Funktion, so können Sie sich beziehenthis
um die Basis-url aus dem data-Attribut. Sie kann dann passieren, dass in dersource
Funktion.Übrigens, wenn es mehr als 1 Eingang, dann müssen Sie jeweils eine eindeutige ID besitzen. Sie sollten nicht über Elemente mit der selben ID 🙂
Einen anderen Weg zum ändern der URL in einem ajax-request
ich denke, was Sie tun sollten, ist :