0
Kann jemand vorschlagen, warum dies nicht die Autocomplete-Daten lädt? Wenn ich die URL im Ajax-Aufruf fest codiere, funktioniert es, aber nicht mit meinem Code, um die URL-Quelle zu ändern? Ich bin mir nicht sicher, warum es nicht funktionieren würde. Wenn Sie auf der Seite als Ganzes aussehen wollen, die hartcodierte Version ist: hereAjax JavaScript Radio Button Problem
var starterSearchData;
$(function() {
var destination;
elementVal = $("input[name=radio]"); //note returns array of radio button elements
if (elementVal[0].checked){
destination= "http://learn.cf.ac.uk/webstudent/sem5tl/javascript/assignments/spanish.php",
}
if (elementVal[0].checked){
destination= "http://learn.cf.ac.uk/webstudent/sem5tl/javascript/assignments/italian.php",
}
//Starter Autocomplete (Spanish)
var starterSearchData;
$(function() {
$.ajax({
url: destination,
dataType: "jsonp",
async: false,
success: function(data) {
starterSearchData = $.map(data, function(item) {
if (item.course == "starter")
return item.name;
return item.price;
});
EnableAutoComplete();
},
error: function(xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
function EnableAutoComplete() {
$("#starter").autocomplete({
source: starterSearchData,
minLength: 2,
delay: 010
});
}
});
Radioknopf:
<div id="radio">
<input type="radio" id="radio1" name="radio"><label for="radio1">Spanish</label>
<input type="radio" id="radio3" name="radio"><label for="radio3">Italian</label>
</div>
Sie überprüfen gleiches Element url Wert zuweisen, deshalb Sie entweder die zweite URL, wenn der erste Funk ausgewählt wurde, oder gar nicht, wenn der zweite Funk ausgewählt - 'if (elementVal [ 0] .geprüft) ... '. –