Avatar billede sthen Nybegynder
14. august 2002 - 12:39 Der er 12 kommentarer og
2 løsninger

Flere ting med ét OnClick

Jeg har pt. nedenstående <FORM> hvor <INPUT>-linien bliver DISABLED, når man vælger den RADIO-button der hedder "Taizé".

Er det muligt samtidig at få <INPUT>-feltet der hedder "bem" til at få en VALUE="Aftengudstjeneste" og samtidig DISABLE dette felt også (således at man ikke kan skrive noget andet i feltet "bem")?

Altså i alt tre ting med ét klik.

Min <FORM> ser således ud:

<FORM ACTION="tilfoj_gudstj.php" METHOD="POST">

<fieldset>
<legend>Gudstjeneste-type</legend><br>
<INPUT TYPE="radio" NAME="gtype" value="Højmesse" onClick="this.form.tnavn.disabled = false;">
Højmesse
<INPUT TYPE="radio" NAME="gtype" value="Andet" onClick="this.form.tnavn.disabled = false;">
Anden gudstjeneste eller bemærkning
<INPUT TYPE="radio" NAME="gtype" value="Taizé" onClick="this.form.tnavn.disabled = true;">
Taizé<br>
</fieldset>

</td></tr><tr><td>

<TABLE BORDER="0">
<tr>
<td>Tidspunkt</td>
<td><INPUT TYPE="text" NAME="tdato" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="tmnd" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="taar" SIZE=4 MAXLENGTH=4></td>
<td><INPUT TYPE="text" NAME="ttime" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="tminutter" SIZE=2 MAXLENGTH=2></td>
</tr><tr><td></td>
<td><center>dd</center></td>
<td><center>mm</center></td>
<td><center>yyyy</center></td>
<td><center>hh</center></td>
<td><center>mm</center></td></tr>

<TR><TD>Tjenestedagens navn (f.eks. Septuagesima)</TD>
<TD COLSPAN="5"><INPUT TYPE="text" NAME="tnavn" SIZE=28></TD></TR>

<TR><TD>Prædikant</TD>
<TD COLSPAN="5">
<SELECT SIZE="1" NAME="praest">
<OPTION VALUE="Kristen Skriver Frandsen">Kristen Skriver Frandsen
<OPTION VALUE="Kirsten Knutzen">Kirsten Knutzen
<OPTION VALUE="Anden">Anden
</SELECT>
</TD></TR>

<TR><TD>Bemærkninger</TD>
<TD COLSPAN="5"><INPUT TYPE="text" NAME="bem" SIZE=28></TD></TR>

<TR><TD></TD><TD COLSPAN="5"><INPUT TYPE=SUBMIT VALUE="Udfør">
<input type="reset" value="Ryd indhold"></TD></TR>
</TABLE>

</FORM>
Avatar billede gitrian Nybegynder
14. august 2002 - 13:51 #1
Prøv med:

<INPUT TYPE="radio" NAME="gtype" value="Taizé" onClick="this.form.tnavn.disabled = true;this.form.bem.value = 'Aftengudstjeneste';this.form.bem.disabled = true;">
Avatar billede jakoba Nybegynder
14. august 2002 - 13:57 #2
ikke med disable. for disable er absolut. feltets værdi bliver heller ikke sendt med når formularen afsendes.

men du kan gøre det med readonly attributten.

<fieldset>
<legend>Gudstjeneste-type</legend><br>
<INPUT TYPE="radio" NAME="gtype" value="Højmesse" onClick="this.form.tnavn.disabled = false;this.form.bem.readonly = false;">
Højmesse
<INPUT TYPE="radio" NAME="gtype" value="Andet" onClick="this.form.tnavn.disabled = false;this.form.bem.readonly = false;">
Anden gudstjeneste eller bemærkning
<INPUT TYPE="radio" NAME="gtype" value="Taizé" onClick="this.form.tnavn.disabled = true;this.form.bem.readonly = false;this.form.bem.value = 'AFTENGUDSTJENESTE';">
Taizé<br>
</fieldset>

mvh JakobA
Avatar billede sthen Nybegynder
14. august 2002 - 15:07 #3
Tjekker lige når jeg kommer hjem om det virker - ikke fordi jeg er mistroisk, men for at være sikker på ikke at komme til at lukke et spm. som ikke skulle have været det.
Avatar billede jakoba Nybegynder
14. august 2002 - 15:25 #4
helt fint :-)
Avatar billede sthen Nybegynder
14. august 2002 - 20:18 #5
>> jacoba

Dit script virker delvist, forstået på den måde, at det for mig at se ikke gør nogen forskel om der er sat readonly på eller ej.

Uanset hvad, så medtages "Aftengudstjeneste", men det er i begge situationer også muligt at SLETTE det fra <INPUT>-feltet.

Er det ikke muligt at give feltet ovenstående VALUE uden mulighed for ændring/sletning.
Avatar billede sthen Nybegynder
14. august 2002 - 20:19 #6
>> zbs
Som jacoba siger - den holder ikke
Avatar billede jakoba Nybegynder
14. august 2002 - 20:24 #7
hmm.. det burde ikke være muligt at vælge og redigere i feltet når readonly er sat til true.

noget andet er at readonly er en af de ret nye attributter. vistnok fra IE5.5 og NS6. Så før dem er feltet ikke fixeret til noget.
Avatar billede sthen Nybegynder
14. august 2002 - 23:02 #8
Kører IE 6.0 på en XP maskine.
Det har vel ingen betydning, at det er i et PHP-script - eller hvad ??
Avatar billede jakoba Nybegynder
14. august 2002 - 23:05 #9
IE6 skulle være helt fint.
Det er helt ok at siden genereres med PHP, bare det også står i den html-kode der genereres.
Kan du lægge et link?
Avatar billede sthen Nybegynder
15. august 2002 - 09:33 #10
Desværre ikke - da det er til en Admin-side der er aktiv, men jeg lægger hele koden til dig i aften, når jeg har fået fri fra mit lønnede job.
Avatar billede sthen Nybegynder
15. august 2002 - 23:02 #11
Hej igen jacoba.
Jeg er godt klar over at PHP-delen er slamkodning, men den fungerer efter hensigten, så skidt med det.
Men her er hele filen:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>

<TITLE>Tilføj til sognesøgning</TITLE>

<script language="JavaScript">
<!--
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
-->
</script>

<LINK REL=STYLESHEET TYPE="text/css" HREF="../layout/konf_skrifter.css">
</HEAD>
<BODY BGCOLOR="#000066">
<IMG SRC="../images/logo_neg_menu.gif" WIDTH="109" HEIGHT="96">

<H1>Tilføj til Gudstjenestelisten</H1>

<center>
<table border="0"><tr><td>

<FORM ACTION="tilfoj_gudstj.php" METHOD="POST">

<fieldset>

<legend>Gudstjeneste-type</legend><br>

<INPUT TYPE="radio" NAME="gtype" value="Højmesse" onClick="this.form.tnavn.disabled = false;this.form.bem.readonly = false;">Højmesse
<INPUT TYPE="radio" NAME="gtype" value="Andet" onClick="this.form.tnavn.disabled = false;this.form.bem.readonly = false;">Anden gudstjeneste eller bemærkning
<INPUT TYPE="radio" NAME="gtype" value="Taizé" onClick="this.form.tnavn.disabled = true;this.form.bem.readonly = true;this.form.bem.value = 'Aftengudstjeneste';">Taizé<br>
</fieldset>

</td></tr><tr><td>

<TABLE BORDER="0">
<tr>
<td>Tidspunkt</td>
<td><INPUT TYPE="text" NAME="tdato" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="tmnd" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="taar" SIZE=4 MAXLENGTH=4></td>
<td><INPUT TYPE="text" NAME="ttime" SIZE=2 MAXLENGTH=2></td>
<td><INPUT TYPE="text" NAME="tminutter" SIZE=2 MAXLENGTH=2></td>
</tr>

<tr><td></td>
<td><center>dd</center></td>
<td><center>mm</center></td>
<td><center>yyyy</center></td>
<td><center>hh</center></td>
<td><center>mm</center></td>
</tr>


<TR>
<TD>Tjenestedagens navn (f.eks. Septuagesima)</TD>
<TD COLSPAN="5"><INPUT TYPE="text" NAME="tnavn" SIZE=28></TD>
</TR>


<TR>
<TD>Prædikant</TD>
<TD COLSPAN="5">
<SELECT SIZE="1" NAME="praest">
<OPTION VALUE="Kristen Skriver Frandsen">Kristen Skriver Frandsen
<OPTION VALUE="Kirsten Knutzen">Kirsten Knutzen
<OPTION VALUE="Anden">Anden
</SELECT>
</TD>
</TR>



<TR>
<TD>Bemærkninger</TD>
<TD COLSPAN="5"><INPUT TYPE="text" NAME="bem" SIZE=28></TD>
</TR>

<TR><TD></TD><TD COLSPAN="5"><INPUT TYPE=SUBMIT VALUE="Udfør">
<input type="reset" value="Ryd indhold"></TD></TR>


</TABLE>



</FORM>


<?
if($tdato && $tminutter){

if($gtype == ""){
print "<center><font color=\"#ff0000\"><big><b>";
print "Gudstjenestetype SKAL udfyldes";
print "</b></big></font></center>";
}
else
{



    $db = mysql_connect("xxx", "xxx", "xxx");
    mysql_select_db("xxx", $db);

$dato = mktime($ttime,$tminutter,'00',$tmnd,$tdato,$taar);
$aarmdr = (($taar)*100)+$tmnd;

($result = mysql_query("select * from gudstj where dato='$dato' && aarmdr='$aarmdr' && gtype='$gtype'")) || die(mysql_error());
$tal = mysql_num_rows($result);

if($tal == "0"){

($nymdr = mysql_query("select * from gudstj where aarmdr='$aarmdr'")) || die(mysql_error());
$testtal = mysql_num_rows($nymdr);

if($testtal =="0"){

mysql_query("Insert into gudstj (dato, aarmdr, test) values ('$dato','$aarmdr','1')") || die(mysql_error());
mysql_query("Insert into gudstj (bem, dato, aarmdr, praest, gtype, tnavn, test) values ('$bem','$dato','$aarmdr','$praest','$gtype','$tnavn','0')") || die(mysql_error());
}
else
{
mysql_query("Insert into gudstj (bem, dato, aarmdr, praest, gtype, tnavn, test) values ('$bem','$dato','$aarmdr','$praest','$gtype','$tnavn','0')") || die(mysql_error());
mysql_query("UPDATE gudstj SET dato = '$dato' WHERE aarmdr = '$aarmdr' && test = '1'") || die(mysql_error());
}

echo "<p><b>$tnavn</b> tilføjet</p>";

}
if($tal != "0"){
echo "<p><b>$tnavn</b> er der allerede</p>";
}
}
}
?>

</td></tr>
</table>
</center>

</BODY>
</HTML>
Avatar billede jakoba Nybegynder
15. august 2002 - 23:14 #12
Desværre. Jeg kan ikke se noget galt i din kode for felterne.
Så jeg kan heller ikke forslå dig noget at rette.

Lad os håbe der kommer en forbi med et bedre forslag.
Avatar billede sthen Nybegynder
16. august 2002 - 09:34 #13
OK

Men jeg synes at du skal have noget for din ihærdighed.

/sthen
Avatar billede jakoba Nybegynder
16. august 2002 - 09:49 #14
jamen tak da :-)
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