Avatar billede mobildata Nybegynder
15. januar 2007 - 20:27 Der er 1 løsning

Ændring af graf script

Har nedenstående graf script som virker fint som der er nu:

<script language="JavaScript1.2">
var graphimage="../images/graph.jpg"
var spacer="&nbsp;";
var border="1";
var graphx=new Array()
graphx[0]=["Bar 1","100"]
graphx[1]=["Bar 2","52"]
graphx[2]=["Bar 3","394"]
graphx[3]=["Bar 4","62"]

function graphit(g,gwidth){
total=0
for (i=0;i<g.length;i++)
total+=parseInt(g[i][1])

output='<span class="graph"><table border="0" cellspacing="1" cellpadding="0">'
for (i=0;i<g.length;i++){
percentage=Math.round(g[i][1]*100/total)
calpercentage=Math.round(g[i][1])
calwidth=Math.round(gwidth*(percentage/100))
if(calpercentage == "0"){
graphimage="../images/blank.gif";
spacer="";
border="0";
}
else {
graphimage="../images/graph.jpg";
spacer="&nbsp;";
border="1";
}
output+='<tr><td>'+g[i][0]+'&nbsp;&nbsp;&nbsp;</td><td>'+spacer+'<img alt="'+g[i][0]+'"  src="'+graphimage+'" width="'+calwidth+'" height="12" border="'+border+'"  style=border-color:#cccccc; align="middle"><span class="graph_sub">'+spacer+''+calpercentage+'</span></td></tr>'
}
output+='</table></span>'
document.write(output)
}

graphit(graphx,310)
</script>

Men nu ville jeg gerne have mulighed for at vise et status icon/billeder i venstre side før hver "bar" mit umiddelbare bud på en sådan ændring ville se sådan her ud:


<script language="JavaScript1.2">
var graphimage="../images/graph.jpg"
var spacer="&nbsp;";
var border="1";
var graphx=new Array()
graphx[0]=["Bar 1","100"]
graphx[1]=["Bar 2","52"]
graphx[2]=["Bar 3","394"]
graphx[3]=["Bar 4","62"]

var symbol=new Array()
symbol[0]=["<img src="test.jpg">"]
symbol[1]=["<img src="test.jpg">"]
symbol[2]=["<img src="test.jpg">"]
symbol[3]=["<img src="test.jpg">"]

function graphit(g,gwidth,symbol){
total=0
for (i=0;i<g.length;i++)
total+=parseInt(g[i][1])

output='<span class="graph"><table border="0" cellspacing="1" cellpadding="0">'
for (i=0;i<g.length;i++){
percentage=Math.round(g[i][1]*100/total)
calpercentage=Math.round(g[i][1])
calwidth=Math.round(gwidth*(percentage/100))
if(calpercentage == "0"){
graphimage="../images/blank.gif";
spacer="";
border="0";
}
else {
graphimage="../images/graph.jpg";
spacer="&nbsp;";
border="1";
}
output+='<tr><td>'+symbol[i]+''+g[i][0]+'&nbsp;&nbsp;&nbsp;</td><td>'+spacer+'<img alt="'+g[i][0]+'"  src="'+graphimage+'" width="'+calwidth+'" height="12" border="'+border+'"  style=border-color:#cccccc; align="middle"><span class="graph_sub">'+spacer+''+calpercentage+'</span></td></tr>'
}
output+='</table></span>'
document.write(output)
}

graphit(graphx,310,symbol)
</script>


men det virker skam ikke rigtig, grafen kan slet ikke vises nu. misser jeg et eller andet?
Avatar billede crazysnap Seniormester
15. januar 2007 - 20:52 #1
Hej mobildata,

Det er en af de der små irriterende fejl som man kan glo sig blind på :), men udskifter du:

symbol[0]=["<img src="test.jpg">"]
symbol[1]=["<img src="test.jpg">"]
symbol[2]=["<img src="test.jpg">"]
symbol[3]=["<img src="test.jpg">"]


med:


symbol[0]=["<img src=\"test.jpg\">"]
symbol[1]=["<img src=\"test.jpg\">"]
symbol[2]=["<img src=\"test.jpg\">"]
symbol[3]=["<img src=\"test.jpg\">"]


burde din graf virke som forventet! :) Den blev lige forvirret over de mange """ i samme streng! :)


Håber det virker med den udskiftning!


Mvh.

- Snap
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester