Just nu i M3-nätverket
Jump to content

Ersätta tecken i en string (javascript)


Petter6

Recommended Posts

Ok, men då ska väl även textfältet output (och de två hidden-fälten) laddas med värdena för ursprungsbilden vid sidladdning? Isåfall lägger vi till en onload i BODY samt tar bort if-satsen i TickOutput

 

[log]

<html>
<head>
<script>
function Tick(sSource) {
var re = new RegExp('^(.{1,})(.{1})(.{4})$','i');
arrS=re.exec(sSource);
n=1+((parseInt(arrS[2]))%4);
s=arrS[1]+n+arrS[3];
return s;
}
function TickOutput(oImg) {
sData=oImg.src;
o=document.getElementById('output');
blFirstTime=(o.value=='');
o.value=(blFirstTime)?sData:Tick(o.value);
document.getElementById('bildensId').value=oImg.id;
document.getElementById('bildensSource').value=o.value;
document.getElementById(oImg.id).src=o.value;
}
</script>

</head>

<body onload="TickOutput(document.getElementById('bildId'));">
<img src="/gfx/folder/bilden1_1.png" id="bildId" onClick="TickOutput(this);">
<input style="width:500px;" type="text" id="output" value="">
<input type="hidden" id="bildensId" value="">
<input type="hidden" id="bildensSource" value=""> 
</body>
</html>

[/log]

 

Link to comment
Share on other sites

Det hade varit en bra lösning om inte sökvägen till bilden kunde variera väldigt. Det ska dessutom finnas väldigt många bilder på samma sida som det här ska hända på. Att köra en ONLOAD är alltså inte möjligt eftersom man inte på förhand vet vad bilden som ska ändras heter...

 

Det går inte att baka in i FirstTime grejen som var i förra scriptet att om siffran är 1 (vilket det alltid är) ska den istället bli 2.

 

:thumbsup:

 

Link to comment
Share on other sites

Såhärdå? (och plocka bort hela onload-grejen)

function TickOutput(oImg) {
sData=Tick(oImg.src);
o=document.getElementById('output');
o.value=sData;
document.getElementById('bildensId').value=oImg.id;
document.getElementById('bildensSource').value=sData;
document.getElementById(oImg.id).src=sData;
}

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...