Ich habe zwei Radiobuttons - 'Italienisch' & 'Spanisch'. Wenn einer ausgewählt ist, werde ich die Autovervollständigung für "Main" und "Starter" Eingänge nicht aus verschiedenen Dateien bevölkern. Wenn "Spanisch" aktiviert ist, wird es automatisch von http://xxx/spanish.php automatisch vervollständigt, und wenn "Italienisch" überprüft wird, wird es von http://xxx/italian.php.Javascript Optionsfelder Ausgabe
var radio1 = document.getElementById("radio1");
var radio3 = document.getElementById("radio3");
if (radio1.checked){
alert("radio1 selected");
//Starter Autocomplete (Spanish)
var starterSearchData;
$(function() {
$.ajax({
url: "http://learn.cf.ac.uk/webstudent/sem5tl/javascript/assignments/spanish.php",
dataType: "jsonp",
async: false,
success: function(data) {
starterSearchData = $.map(data, function(item) {
if (item.course == "starter")
return item.name;
});
EnableAutoComplete();
},
error: function(xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
function EnableAutoComplete() {
$("#starter").autocomplete({
source: starterSearchData,
minLength: 2,
delay: 010
});
}
});
//Main Autocomplete (Spanish)
var mainSearchData;
$(function() {
$.ajax({
url: "http://learn.cf.ac.uk/webstudent/sem5tl/javascript/assignments/spanish.php",
dataType: "jsonp",
async: false,
success: function(data) {
mainSearchData = $.map(data, function(item) {
if (item.course == "main")
return item.name;
});
EnableAutoComplete();
},
error: function(xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
function EnableAutoComplete() {
$("#main").autocomplete({
source: mainSearchData,
minLength: 2,
delay: 010
});
}
});
}else if (radio3.checked) { .... same code, except url changed to http://xxx/italian.php... }
HTML:
<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>
<label for="starter">Choose starter</label>
<input type="text" name="starter" id="starter"><br>
<label for="main">Choose main</label>
<input type="text" name="main" id="main"><br>
Der Ajax-Aufruf, usw., funktioniert, aber wenn ich die if-Anweisung versuchen, die Felder füllen nicht/die automatische Vervollständigung.
Danke.
welche Fehler Sie in der Konsole zu bekommen? – Curiousdev
Ich würde einen Ajax-Aufruf haben und die Optionsfelder verwenden, um die korrekten Werte in einer einfachen if-Bedingung zu setzen oder URL-Parameter zum Filtern der Abfrage/Ergebnisse zu senden. Beispiel 'Zuweisungen /? Lang = ****** & Kurs = ******' Auf diese Weise können Sie eine PHP-Datei mit der Rückgabe der richtigen Abfrage befassen. – NewToJS
Curiousdev - Ich bekomme die Nachricht .. "Uncaught TypeError: Kann die Eigenschaft 'checked' von null" für die "if (radio1.checked) {" Zeile nicht lesen. – Tatws24