我在普通的javascript中进行一些AJAX调用,它返回一个HTML。 在回调中,我可以看到HTML中的响应。我可以解析包含[Object Nodelist]的响应。现在在我的HTML中有选择列表,我想用这个在ajax响应中收到的更新的Nodelist替换这个选择列表。但问题是它是nodelist,我希望它显示为。这样我就可以用ajax响应替换原来的选择列表。
我的代码:
function loadFacility(callback)
{
//alert('In loadFacility');
var xmlhttp;
var keys=document.firstCallInformation.facilityselect.value;
var urls="http://localhost:8080/webfdms/showFirstCallInformation.do?vitalsId=366";
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status == 200)
{
//var some=xmlhttp.responseXML.documentElement;
var response = xmlhttp.responseText;
console.log(response)
callback(xmlhttp.responseText);
}
}
xmlhttp.open("GET",urls,true);
xmlhttp.send(null);
}
function loadFacilityCallback(response){
if(response != null){
//alert(response);
console.log(response);
var div = document.createElement("div");
div.innerHTML = response;
document.getElementById("facilityselect").innerHTML = div.querySelector("select#facilityselect");
}
}
现在在回调函数(loadFacilityCallback)中,我正在创建DIV元素并解析响应。但是当我使用div.querySelector("select#facilityselect")
将更新的选择列表分配给document.getElementById("facilityselect").innerHTML
时,我在选择列表中看不到任何内容,因为它是[对象节点列表]。现在我如何从nodelist获取我的选项值。
请帮忙。