Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem HTML form

Dobrý den, potřeboval bych poradit. Mám html formulář, kde mám 2 radio buttony a jeden checkbox. Radiobuttony jsou zatím pojmenované 1 a 2. Chtěl bych, aby když se klikne na radio button 2, tak se zpřístupní zaškrtnutí checkboxu. Checkbox má funkci, že se zobrazí html editor. Když se klikne na radio button 1, tak se zase znepřístupní checkbox. Dokážu zobrazit html editor po zaškrtnutí checkboxu a odškrtnutí zase schovat, ale jelikož jsem nikdy nepracoval s formuláři, tak nevím jak udělat ty závisloti(zaškrtnutí checkboxu pouze v případě, že je vybraný radio button 2). Děkuji Pavel68

Předmět Autor Datum
Například: <script language="javascript"> function EnableCheckBox() { document.getElementById("MyCh…
Flash_Gordon 19.09.2010 22:09
Flash_Gordon
Diky moc tohle přesně jsem potřeboval.
Pavel68 19.09.2010 22:11
Pavel68
<HTML> <SCRIPT LANGUAGE="JavaScript"> function fullEditor() { if (myCheckBox.checked == true) (myTex…
pme 19.09.2010 23:16
pme
Díky, teď jsem ale narazil na další problém :-) potřeboval bych poradit jak udělat, aby když odešlu…
Pavel68 20.09.2010 14:59
Pavel68
Tu je tip: /prispôsob si to podľa seba...;-) <html> <head> <script type="text/javascript"> function…
pme 20.09.2010 15:40
pme
Díky, ale asi jsem to špatně popsal. Ten formulář je anketa, kde na konci nám návštevník zanechá vzk…
Pavel68 20.09.2010 15:48
Pavel68
Tu máš kohouta, hrej si: PHP skript: <?php echo $_POST['text']; ?> Upozornění pro cestující: -O… poslední
Flash_Gordon 20.09.2010 16:26
Flash_Gordon

Například:

<script language="javascript">
function EnableCheckBox()
{
document.getElementById("MyCheckBox").disabled = false;
document.getElementById("MyTextArea").style.display = "none";
}

function DisableCheckBox()
{
document.getElementById("MyCheckBox").disabled = true;
}

function EnableEditor()
{
if (document.getElementById("MyCheckBox").disabled == false && document.getElementById("MyCheckBox").checked == true)
document.getElementById("MyTextArea").style.display = "";
else
document.getElementById("MyTextArea").style.display = "none";

}


</script>

HTML kód:

<body>

<input type="radio" name="group1" value="Milk" onclick="DisableCheckBox()" > Milk<br>
<input type="radio" name="group1" value="Butter" onclick="EnableCheckBox()"> Butter<br>

<input type="checkbox" name="sports" id="MyCheckBox" value="soccer" onclick="EnableEditor()" disabled>CheckBox<br><br>

<textarea rows="2" cols="20" style="display:none" id="MyTextArea" >
At W3Schools you will find all the Web-building tutorials you need, from basic HTML to advanced XML, SQL, ASP, and PHP.
</textarea>

</body>
</html>

Demonstrační soubor přiložen:

<HTML>
<SCRIPT LANGUAGE="JavaScript">
function fullEditor() {
if (myCheckBox.checked == true)
(myText.style.display="")
else
(myText.style.display="none")
}
function setShemp(setting) {
(myCheckBox.checked=false);
(myText.style.display="none");
(myCheckBox.disabled=setting);
}
</SCRIPT>
<BODY >
<FORM>
<B>Vyberte jednu z možností:</B><P>
<INPUT id="myradio1" TYPE="radio" NAME="radiobutton" VALUE="A" CHECKED onClick="setShemp(true)">A
<INPUT id="myradio2" TYPE="radio" NAME="radiobutton" VALUE="B" onClick="setShemp(false)">B
<input id="myCheckBox" type="checkbox" NAME="check"value="checkbox" disabled onClick="fullEditor();">CheckBox</P>
<textarea id="myText" rows="10" cols="50" style="display:none">
At W3Schools you will find all the Web-building tutorials you need, from basic HTML to advanced XML, SQL, ASP, and PHP.
</textarea>
</FORM>
</BODY>
</HTML>

Díky, teď jsem ale narazil na další problém :-)
potřeboval bych poradit jak udělat, aby když odešlu formulář skriptu například "zpracuj.php", aby se výsledek zobrazil na stránce s formulářem a znovu ten formulář načetl. Formulář sesbírá data, které uživatel zadal, ty se předají skriptu "zpracuj.php" a pokud se vše podaří, tak napíše pomocí echo výsledek. Toto vše funguje jenže bych chtěl aby se mi výsledek nezobrazoval na "zpracuj.php" ale na stránce s formulářem. Například nad ním a resetoval ho.
Například:
formular.html

<HTML>
<BODY >
<FORM action="zpracuj.php">
<B>Vyberte jednu z možností:</B><P>
<INPUT id="myradio1" TYPE="radio" NAME="radiobutton" VALUE="A" CHECKED onClick="setShemp(true)">A
<INPUT id="myradio2" TYPE="radio" NAME="radiobutton" VALUE="B" onClick="setShemp(false)">B
<input id="myCheckBox" type="checkbox" NAME="check"value="checkbox" disabled onClick="fullEditor();">CheckBox</P>
<textarea id="myText" rows="10" cols="50" style="display:none">
At W3Schools you will find all the Web-building tutorials you need, from basic HTML to advanced XML, SQL, ASP, and PHP.
</textarea>
<input type="submit" value="Odeslat" />
</FORM>
</BODY>
</HTML>

php skript

$volba1 = $_POST['radiobutton'];
.....zpracuje data...
if ($ok) {
echo "OK"; } else {
echo "Chyba";
}

A aby po zpracování vypadal formular.html

<HTML>
<BODY >
<FORM action="zpracuj.php">
-----TADY TO ECHO---------
---+resetovany formular---
<B>Vyberte jednu z možností:</B><P>
<INPUT id="myradio1" TYPE="radio" NAME="radiobutton" VALUE="A" CHECKED onClick="setShemp(true)">A
<INPUT id="myradio2" TYPE="radio" NAME="radiobutton" VALUE="B" onClick="setShemp(false)">B
<input id="myCheckBox" type="checkbox" NAME="check"value="checkbox" disabled onClick="fullEditor();">CheckBox</P>
<textarea id="myText" rows="10" cols="50" style="display:none">
At W3Schools you will find all the Web-building tutorials you need, from basic HTML to advanced XML, SQL, ASP, and PHP.
</textarea>
<input type="submit" value="Odeslat" />
</FORM>
</BODY>
</HTML>

Tu je tip: /prispôsob si to podľa seba...;-)
<html>
<head>
<script type="text/javascript">
function validate_required(field,alerttxt)
{
with (field)
{
if (value==null||value=="")
{
alert(alerttxt);return false;
}
else
{
return true;
}
}
}

function validate_form(thisform)
{
with (thisform)
{
if (validate_required(email,"Email must be filled out!")==false)
{email.focus();return false;}
}
}
</script>
</head>

<body>
<form action="submit.htm" onsubmit="return validate_form(this)" method="post">
Email: <input type="text" name="email" size="30">
<input type="submit" value="Submit">
</form>
</body>

</html>

Díky, ale asi jsem to špatně popsal. Ten formulář je anketa, kde na konci nám návštevník zanechá vzkaz v textarea. Ten php skript tyto získaná data zapíše do html souboru a poděkuje za příspěvek. Pokud se vyskytne nějaká chyba(nemožnosti například zapisovat do html souboru) tak se zobrazí chyba. Vstup uživatele neověřuji, protože je možnost prázdné odpovědi. A chtěl bych, aby když se formulář vyplní a klikne na odeslat, tak se to zapíše a načte se stránka s prázdným formulářem pouze s rozdílem, že na té samé stránce bude napsáno buď Děkujeme za příspěvek a v případě chyby, že se vyskytla chyba.

Zpět do poradny Odpovědět na původní otázku Nahoru