Gå til innhold

[løst]Hente ut radioknapp verdi


Anbefalte innlegg

Hei har noen radio knapper som har hver sin verdi "$valgt". Hvordan kan jeg bruke javascript for å hente ut verdien til den knappen som er valgt?

 

$result = $Choo->query("SELECT * FROM `$valg` WHERE maskin_id=$maskin_id ORDER BY pris");

 

if(mysql_num_rows($result)) {

echo ("<table width='420' cellspacing='0' cellpadding='0' align='center'>");

$i = 0;

$valgt = 0;

while($row = mysql_fetch_row($result)) {

if ($i == 0){

echo("<tr><td ><input name='$valg' type='radio' onClick='java script:' checked value='$valgt'></td><td>$row[1]</td><td align='right' style='font-weight: bold;' colspan='2'>$row[4] ,-</td></tr>");

$i = i + 1;

 

 

} else

 

 

echo("<tr><td width=10><input name='$valg' type='radio' onClick='' value='$valgt'></td><td width=500>$row[1]</td><td width='60' align='right' style='color: green;' colspan='2'>+$row[4] ,-</td></tr>");

$valgt++;

} echo("</table>");

} else echo("ingen data i db: $valg ");

}

Endret av Pugger
Lenke til kommentar
Videoannonse
Annonse

Jeg er ikke helt sikker på om jeg har forstått spørsmålet ditt riktig, men for å hente ut en verdi fra et input-element, noe en radiobutton er, så må du enten ha en link til radiobuttonen, eller få tak i den f.eks ved å bruke document.getElementById.

Hvis du gir radiobuttonen id'en radiobutton:

<input id='radiobutton' name='$valg' type='radio' onClick='' value='$valgt'>

Kan du få verdien med:

var verdi = document.getElementById('radiobutton').value;

Endret av magicgunnar
Lenke til kommentar
.. bortsett fra at når input elementet er av type radio eller checkbox så får man ut om den er valgt eller ikke via radioElement.checked :-)

 

Om du sjekker www.ernis.no > velg en pc > scroll ned velg konfigurer > velg et bilde så ser du radioknappene jeg snakker om. Grunnen til at jeg vil finne ut hvilken knapp som er valgt er for at prisen($row[4]) skal legges til i kalkulatoren nederst til høyre på siden. Koden for kalk er :

 

 

 

totalpris = total($maskin_id);

$mva = $totalpris * 0.23;

$umva = $totalpris - $mva;

 

 

 

Hittil har jeg prøvd med en funksjon som skal gjøre dette. Jeg er rimelig nybegynner på javascript og får den ikke til å funke. Her er koden:

 

 

 

while($row = mysql_fetch_row($result)) {

if ($i == 0){

echo("<tr><td><input name='$row[4]' type='radio' onclick='nyPris(this)' checked value='$valgt'></td><td>$row[1]</td><td align='right' style='font-weight: bold;' colspan='2'>$row[4] ,-</td></tr>");

$tillegg = $row[4];

$i = i + 1;

 

 

} else

 

 

echo("<tr><td width=10><input name='$row[4]' type='radio' onclick='nyPris(this)' value='$valgt'></td><td width=500>$row[1]</td><td width='60' align='right' style='color: green;' colspan='2'>+$row[4] ,-</td></tr>");

$valgt++;

} echo("</table>");

} else echo("ingen data i db: $valg ");

}

 

echo("

<script language='JavaScript' type='text/javascript'>

var totalpris = ', $totalpris, ';

function nyPris(passedObject)

{

if (passedObject.checked && !isNaN(parseInt(passedObject.value)) {

totalpris += parseInt(passedObjec.value);

alert(totalpris);

}

}

</script>

");

Lenke til kommentar
Tror du må sørge for at alle radiobuttonene (som ikke skal kunne velges samtidig) har samme name-attributt, og legge beløpet i value-attributten istedet? For du skal vel ikke kunne velge flere operativsystem samtidig?

 

Se ellers om radiobuttons her: http://www.w3schools.com/html/html_forms.asp

 

Det stemmer. Man skal kun velge et operativsystem. En liten glipp fra min side. Har endra navnet til det samme på alle knappene nå men prisen blir fortsatt ikke oppdatert. Beløpet ligger nå også i value feltet. Har testet med alert og fikk fram riktig beløp. Skal ta en titt på linken din men er som sagt ganske nybegynner på javascript. Fjerner jeg funksjonen så får jeg ingen feilmeldinger. Har prøvd å google litt og jeg trenger visst å bruke js cookie eller refresh for å sende value til php? Her er den nye koden. :

 

function listDBvalg($valg) {
		if($_GET['maskin_id'])$maskin_id = $_GET['maskin_id'];

		$Choo = new mysql();
		$Choo->connect();

		$result = $Choo->query("SELECT * FROM `$valg` WHERE maskin_id=$maskin_id ORDER BY pris");

if(mysql_num_rows($result)) {
			echo ("<table width='420' cellspacing='0' cellpadding='0' align='center'>");
			$i = 0;
			$valgt = 0;

while($row = mysql_fetch_row($result)) {
 if ($i == 0){
  echo("<tr><td><input name='weewee' type='radio' onclick='nyPris(this)' checked value='$valgt'></td><td>$row[1]</td><td align='right' style='font-weight: bold;' colspan='2'>$row[4] ,-</td></tr>");
$i = i + 1;

 } else 


 echo("<tr><td width=10><input name='weewee' type='radio' onclick='nyPris(this)' value='$valgt'></td><td width=500>$row[1]</td><td width='60' align='right' style='color: green;' colspan='2'>+$row[4] ,-</td></tr>");
  $valgt++;
} echo("</table>");
  } else echo("ingen data i db: $valg ");
 }

echo '
<script language="JavaScript" type="text/javascript">
var totalpris = ', $totalpris, ';
function nyPris(passedObject)
{
if (passedObject.checked && !isNaN(parseInt(passedObject.value))) {
	totalpris += parseInt(passedObject.value);
	alert(totalpris);
}  
}
</script>'; 


$totalpris = total($maskin_id);
$mva =  $totalpris * 0.23;
$umva = $totalpris - $mva;

Endret av Pugger
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...