Thompa__85Medlem sedan aug. 2002601 inlägg
Hej!
Jag har en funktion:
function showHint(str)
{
if (str.length==0)
{
document.getElementById("värde").innerHTML="";
return;
}
Jag vill få in värdet från str till document.getElementById() och jag har testat med getElementById(str) men det verkar inte fungera.
Hur gör jag?
The_HulkMedlem sedan juni 20031 937 inlägg
Kan du visa koden för html-taggen som du vill ändra värdet på.
har du satt id='värde' på den taggen?
<div id='värde'></div>
innehåller str id på html-taggen eller text som ska visas?
nitro2k01Medlem sedan aug. 20037 630 inlägg
Så här?
function showHint(str)
{
if (str.length==0)
{
// Tom sträng, använd standard-värde
document.getElementById("värde").innerHTML="";
return;
}
else
{
// Använd strängen
document.getElementById(str).innerHTML="";
return;
}
Thompa__85Medlem sedan aug. 2002601 inlägg
Upptäckte att det har fungerat. Det är ett annat problem som skapar felet:
Min kod:
function showHint(str)
{
var id = str;
if (str.length==0)
{
document.getElementById(id).innerHTML="";
return;
}
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support XMLHTTP!");
return;
}
var url="/inc/show.asp?q="+str;
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function stateChanged()
{
if (xmlhttp.readyState==4)
{
document.getElementById(id).innerHTML=xmlhttp.responseText;
}
}
I första funktionen fungerar det, men jag får inte med 'id' till den andra funktionen, dvs stateChanged. Hur får jag ner värdet?
metalboyMedlem sedan jan. 2005870 inlägg
Du får göra id till en global variabel
nitro2k01Medlem sedan aug. 20037 630 inlägg
Eller så kan man definiera funktionen inline, som nedan.
Dock stör jag mig fortfarande på att du först kollar om strängen är tom och sedan anropar document.getElementById med den strängen. Då anropar du ju document.getElementById("") som alltid lär returnera null!
function showHint(str)
{
var id = str;
if (str.length==0)
{
document.getElementById(id).innerHTML="";
return;
}
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support XMLHTTP!");
return;
}
var url="/inc/show.asp?q="+str;
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4)
{
document.getElementById(id).innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
Thompa__85Medlem sedan aug. 2002601 inlägg
nitro2k01 skrev:
Eller så kan man definiera funktionen inline, som nedan.
Dock stör jag mig fortfarande på att du först kollar om strängen är tom och sedan anropar document.getElementById med den strängen. Då anropar du ju document.getElementById("") som alltid lär returnera null!
function showHint(str)
{
var id = str;
if (str.length==0)
{
document.getElementById(id).innerHTML="";
return;
}
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Your browser does not support XMLHTTP!");
return;
}
var url="/inc/show.asp?q="+str;
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4)
{
document.getElementById(id).innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
Tack det fungerade! Ska ta bort den onödiga kollen ;)