Я использую это, чтобы получить выпадающие списки:
function showRecords(str,column,nextDiv) {
if (str== null) {
document.getElementById(nextDiv).innerHTML="----------------------------------------";
return;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
var xmlhttp=new XMLHttpRequest();
} else {
// code for IE6, IE5
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById(nextDiv).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getRecords.php?"+column+"="+str,true);
xmlhttp.send();
}
Страница загружается нормально, однако, когда вы смотрите на информацию об источнике, там ничего нет из AJAX, поэтому я не могу манипулировать какими-либо значениями раскрывающихся списков через getElementById
, это нормально?
Разъяснение
Сам фактический идентификатор находится на главной странице, но все параметры импортируются с другой страницы. Я не могу использовать этот код, в частности:
<?php echo "document.getElementById('province').value =\"Abim\";";?>
Поскольку этих стран не существует на этой странице, они являются импортированными значениями, и не только это, но единственное, что на странице, это ...
<option value = >--------------------</option>
<option value="Abim">Abim</option>
<option value="Adjumani">Adjumani</option>
<option value="Amolatar">Amolatar</option>
<option value="Amuria">Amuria</option>
... etc
Что все здесь вставляется
<select name =province class=dropdown id=province></select>
в силу ид.
Решение
Передайте другую переменную через функцию AJAX: oldVal ($ _REQUESTed Value)
...
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById(nextDiv).innerHTML = xmlhttp.responseText;
---------> document.getElementById(nextDiv).value = oldVal;
}
}