Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak radio'lem wpisać w textare jakis tekst?
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
harbii
Mam taki skrypt
  1. <script type="text/javascript">
  2. function wartosc()
  3. {
  4. var wartosc = document.form.wybor.value;
  5. document.form.txt.value = wartosc;
  6. }
  7. </head>
  8. <form name="formularz">
  9. <input radio name="wybor" type="radio" value="radiol1" id="radiol1" oncheck="wartosc();">1<br />
  10. <input radio name="wybor" type="radio" value="radiol2" id="radiol2" oncheck="wartosc();">2
  11.  
  12. <textarea name="txt" cols="50" rows="1"></textarea>
  13. </form>
  14. </body>


Chodzi o to aby wciskając jakieś radio w textarea pojawił się napis. Powyższy kod minie działa. Dlaczego?
kossa
Jeśli mnie pamięć nie myli to pole formularza textarea nie posiada atrybutu value

Twój kod:
Cytat
document.form.txt.value = wartosc;

wykorzystaj do pola type='text'

Łukasz
lukasz_sosnowiec
Cytat(harbii @ 15.08.2006, 22:18 ) *
var wartosc = document.form.wybor.value;
document.form.txt.value = wartosc;

(...)

<form name="formularz">


Powinno być:
Kod
var wartosc = document.formularz.wybor.value;
document.formularz.txt.value = wartosc;

lub ewentualnie
Kod
var wartosc = document.forms[0].wybor.value;
document.forms[0].txt.value = wartosc;
Zajec
Litości, nie używajcie document.all!!! Sam microsoft, który to wymyślił odradza takich konstrukcji!
Więcej: http://osiolki.net/faq/documentall


Kod
function wartosc()
{
var wartosc = document.forms['formularz'].elements['wybor'].value;
document.forms['formularz'].elements['txt'].value = wartosc;
}
harbii
  1. <script type="text/javascript">
  2. function wartosc()
  3. {
  4. var wartosc = document.forms['formularz'].elements['wybor'].value;
  5. document.forms['formularz'].elements['txt'].value = wartosc;
  6. }
  7. </head>
  8. <form name="formularz">
  9. <input radio name="wybor" type="radio" value="radiol1" id="radiol1" oncheck="wartosc();">1<br />
  10. <input radio name="wybor" type="radio" value="radiol2" id="radiol1" oncheck="wartosc();">2
  11.  
  12. <textarea name="txt" cols="50" rows="1"></textarea>
  13. </form>
  14. </body>

lub
  1. var wartosc = document.forms['formularz'].elements['wybor'].value;
  2. document.forms['formularz'].elements['txt'].type='tekst';


i nie działa sad.gif

ja sie nie upeiram przy textare może być jakiś inny tekst box byla dało sie go przypisaćdo zmiennej w php
gekon
Primo: Nie ma takiego zdarzenia jak "oncheck"; proponowałbym "onclick" lub "onfocus".
Secundo: Agent (przeglądarka) nie wie, który dokładnie input został kliknięty.
harbii
dziękuje gekon za uwagę
ale jaka jest twoja propozycja na rozwiązanie problemu? sadsmiley02.gif
bo onclick wywala undefined
gekon
  1. <script type="text/javascript">
  2. function wartosc(){
  3. var radioButton = document.forms['formularz'].elements['wybor'];
  4. for(var i=0; i < radioButton.length; i++){
  5. radioButton[i].onclick = function(){
  6. document.forms['formularz'].elements['txt'].value = this.value;
  7. }
  8. }
  9.  
  10. }
  11. window.onload = function(){
  12. wartosc();
  13. }
  14. </head>
  15. <form name="formularz">
  16. <p><input radio name="wybor" type="radio" value="radiol1" id="radiol1" />1
  17. <input radio name="wybor" type="radio" value="radiol2" id="radiol1" />2</p>
  18.  
  19. <textarea id="txt" name="txt" cols="50" rows="1"></textarea>
  20. </form>
  21. </body>
harbii
gekon jesteś WIELKI!!! Rkingsmiley.png
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.