大家早上好,我有这个代码,来自w3schools
var xmlhttp
function showCustomer(str,str2)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="/Script/ajaxdb/aaaaa.php";
url=url+"?id="+str;
url=url+"&id2="+str2;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function stateChanged()
{
if (xmlhttp.readyState==4) {
document.getElementById("TXTHINT").innerHTML=xmlhttp.responseText;
}
}
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
我想将ID的名称更改为
document.getElementById("TXTHINT").innerHTML=xmlhttp.responseText;
我想要像
这样的东西 document.getElementById("TXTHINT1").innerHTML=xmlhttp.responseText;
document.getElementById("TXTHINT2").innerHTML=xmlhttp.responseText;
document.getElementById("TXTHINT3").innerHTML=xmlhttp.responseText;
依旧......
我试过
document.getElementById("TXTHINT"+str).innerHTML=xmlhttp.responseText;
因为我需要变量str的值,要将id名称设为TXTHINT1,TXTHINT2,TXTHINT3等等....
但是ID不起作用。
有人可以帮助我吗?
答案 0 :(得分:1)
我更愿意为您想要更改的所有元素设置一个类attribut。 例如:
<div id="TXTHINT" class="txthints"></div>
<div id="TXTHINT1" class="txthints"></div>
现在,您可以使用类atrri但“txthints”轻松遍历所有元素并设置内容。
var divsToChange = document.getElementsByClassName('txthints');
var newContent = xmlhttp.responseText;
for(i=0; i < divsToChange.length; ++i ) {
divsToChange[i].innerHTML = newContent;
}
答案 1 :(得分:0)
试试这个
xmlHttp.onreadystatechange = function(){
stageChanged(str, str2); }; xmlHttp.open("GET", handlingURL, true); xmlHttp.send(null); }
function stageChanged(str,str2){
if(xmlHttp.readyState==4) { document.getElementById("TXTHINT"+str).innerHTML=xmlhttp.responseText; //do something with the response } }
STR未定义为全局参数,因此无法在响应函数中访问,您需要将str作为参数传递。
答案 2 :(得分:0)
您应指定一个全局变量以在其他函数中访问它。
var xmlhttp
var str_global;
function showCustomer(str,str2)
{
str_global=str;
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support AJAX!");
return;
}
var url="/Script/ajaxdb/aaaaa.php";
url=url+"?id="+str;
url=url+"&id2="+str2;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function stateChanged()
{
if (xmlhttp.readyState==4) {
document.getElementById("TXTHINT"+str_global).innerHTML=xmlhttp.responseText;
}
}