ラジオボタンが2つあります。「イタリア語」&「スペイン語」です。 1つを選択すると、 'Main'と 'Starter'入力が異なるファイルから読み込まれるようにするためのオートコンプリートはありません。したがって、「スペイン語」をチェックすると、オートコンプリートはhttp://xxx/spanish.php、「イタリアン」がチェックされている場合はhttp://xxx/italian.phpから行います。Javascriptラジオボタンの問題
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>
AJAX呼び出しなど、動作しますが、私はif文をしようとすると、フィールドは/オートコンプリートを移入しないでください。
ありがとうございました。
コンソールになっているか、エラー? – Curiousdev
私は1つのajaxコールを持っていて、ラジオボタンを使って単純なif条件で正しい値を設定するか、urlパラメータを送信してクエリ/結果をフィルタリングするようにします。例 'assignments /?Lang = ******&Course = ******'このようにして、正しいクエリを返すPHPファイルを扱うことができます。 – NewToJS
Curiousdev - 私はメッセージを受け取りました.. "Uncaught TypeError:" if(radio1.checked){"行に 'checked of' null 'を読み取れません。 – Tatws24