Asa Medlem sedan dec. 2001 1 860 inlägg Frågan 17 mars 2008 21:39 #1 Jag har en selectruta och när jag väljer i den så vill jag att en redan befintlig text inne i en span: <span class="extra">Texten</span> ska bytas mot det värdet som det jag valde i selectrutan. Det som står först i value av de två olika värderna som separeras med ;
Förstår ni hur jag menar?
<select name="namnet">
<option value="val 1;namn 1">namn1</option>
<option value="val 2;namn 2">namn2</option>
<option value="val 3;namn 3">namn3</option>
<option value="val 4;namn 4">namn4</option>
</select>
<span class="extra">Texten</span>
använd "onChange" på din select.
function b(v) {
document.getElementById("extra").innerHTML = v.value;
}
<select name="namnet" onchange="b(this)">
<option value="val 1;namn 1">namn1</option>
<option value="val 2;namn 2">namn2</option>
<option value="val 3;namn 3">namn3</option>
<option value="val 4;namn 4">namn4</option>
</select>
<span class="extra" id="extra">Texten</span>
Asa Medlem sedan dec. 2001 1 860 inlägg Tackar :)
Funkade fint men hur gör jag så den bara hämtar ut ex val 1 i värdet val 1;namn 1 ?
Alltså enbart första delen av värdet. Innan ;
Vill gärna veta hur man kan hämta ut båda värderna men med array eller nåt. Kan vara bra att veta. Ifall jag har fler värden på nån annan del av nån hemsida.
M metalboy Medlem sedan jan. 2005 953 inlägg function b(v) {
document.getElementById('extra').innerHTML = v.split(';')[0];
}
Asa Medlem sedan dec. 2001 1 860 inlägg Det funkar inte för mig :(
M metalboy Medlem sedan jan. 2005 953 inlägg Oj... sorry... missade ju value :D
function b(v) {
document.getElementById('extra').innerHTML = v.value.split(';')[0];
}
Asa Medlem sedan dec. 2001 1 860 inlägg Tackar så mycket. Funkade fint nu :)
Slutliga koden
<script>
function b(v) {
document.getElementById('extra').innerHTML = v.value.split(';')[0];
}
</script>
<select name="namnet" onchange="b(this)">
<option value=""> - Välj - </option>
<option value="val 1;namn 1">namn1</option>
<option value="val 2;namn 2">namn2</option>
<option value="val 3;namn 3">namn3</option>
<option value="val 4;namn 4">namn4</option>
</select>
<span class="extra" id="extra">Texten</span>
Asa Medlem sedan dec. 2001 1 860 inlägg Kan man kolla OM det står något på andra stället i värdet? Alltså en ifsats som kollar OM ex det står namn 1 då ska den sätta
document.getElementById('extra2').innerHTML = v.value.split(';')[1];
Annars ska den inte alls sätta texten till span fältet. Förstår ni?
function b(v) {
var thevalue = v.value.split(';');
if(thevalue[1].length>0) {
document.getElementById("extra").innerHTML = thevalue[0];
}
}