Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pomoc z radio
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
szlipek
A mianowicie chcę stworzyć coś takiego :

Kod
<INPUT TYPE=RADIO  NAME="druk" VALUE="A3">A3
<INPUT TYPE=RADIO  NAME="druk" VALUE="A4"  >A4
<INPUT TYPE=RADIO  NAME="druk" VALUE="A5">A5
<INPUT TYPE=RADIO  NAME="druk" VALUE="dowolny"  >dowolny



<INPUT TYPE=TEXTAREA VALUE="rozmiar"> mm


i właśnie nie wiem jak to zrobić w javascript żeby po zaznaczeniu jakiegoś z radio zmieniał się rozmiar w textarea a jak zaznaczy się dowolny to tak żeby można było wpisać własny rozmiar. Czy móglby mi ktoś podpowiedzieć jak to zrobić albo czego mam szukać?
erix
onchange/onclick - potem switch wg wartości i obj.style.height/rows.
szlipek
a można trochę jaśniej najlepiej na jakimś prostym przykładzie?
erix
A nie łaska chociaż wyguglać parę z podanych przeze mnie fraz? Nie po to obejmuje w kursywę i specjalnie co do joty piszę, aby sobie tylko napisać.
Pawel_W
Cytat(erix @ 3.08.2009, 15:01:46 ) *
onchange/onclick - potem switch wg wartości i obj.style.height/rows.

sądząc z jego posta chodziło mu o to, żeby zmieniał się rozmiar wpisany do pola w mm, a nie rozmiar pola winksmiley.jpg
erix
W każdym razie zdarzenie jest to samo. [;

Cytat
zmieniał się rozmiar wpisany do pola w mm

No to podobny obiekt, wystarczy poszukać.
szlipek
Od wczoraj siedzę nad tym poczytałem trochę na temat tego wszystkiego ale nadal nie działa mi zrobiłem coś takiego

Kod
function valid( X ){
  document.getElementById( 'szer' ).disabled = false;
  document.getElementById( 'wys' ).disabled = false;
  if( X == 1 ){
  document.getElementById( 'szer' ).disabled = true;
   document.getElementById( 'wys' ).disabled = true;
  }else if( X == 2 ){


  }
  }

function rozmiar( X ){


var szerokosc = 0;
var wysokosc = 0;
switch (X) {
 case '1':
     szerokosc = 297;
     wysokosc = 420;
     break;
 case '2':
     szerokosc = 210;
     wysokosc = 297;
     break;
 case '3':
     szerokosc = 148;
     wysokosc = 210;
     break;
 case '4':
     szerokosc = 105;
     wysokosc = 148;
     break;
 case '5':
     szerokosc = 250;
     wysokosc = 353;
     break;
 case '6':
     szerokosc = 176;
     wysokosc = 250;
     break;
 case '7':
     szerokosc = 125;
     wysokosc = 176;
     break;
 case '8' :
     szerokosc = 30;
     wysokosc = 30;
     break;
 default:
 }
 }
 
document.write (szerokosc);
</script> 
</head>
<body>
<table>
<form name="formularz">
<tr><td>
A3<input type="radio" name="rozmiar" id="A3" value="A3" onclick="valid( '1' );" onChange="rozmiar( '1')" />
A4 <input type="radio" name="rozmiar" id="A4" value="A4" onclick="valid( '1' );" onChange="rozmiar( '2')" />
A5<input type="radio" name="rozmiar" id="A5" value="A5" onclick="valid( '1' );" onChange="rozmiar( '3')" />
A6 <input type="radio" name="rozmiar" id="A6" value="A6" onclick="valid( '1' );" onChange="rozmiar( '4')" />
B4 <input type="radio" name="rozmiar" id="B4" value="B4" onclick="valid( '1' );" onChange="rozmiar( '5')" />
B5<input type="radio" name="rozmiar" id="B5" value="B5" onclick="valid( '1' );" onChange="rozmiar( '6')" />
B6 <input type="radio" name="rozmiar" id="B6" value="B6" onclick="valid( '1' );" onChange="rozmiar( '7')" />
dowolny <input type="radio" name="rozmiar" checked id="dowolny" value="dowolny" onclick="valid( '' );" onChange="rozmiar( '8')" /><br />

Szerokość projektu w mm (30-301) (użytek ze spadem): <input type="text" name="szer" id="szer" value=""  /><br />
<script type="text/javascript">
var szer = new LiveValidation("szer");
szer.add( Validate.Numericality,{ minimum: 30, maximum: 301 } );

</script>
Wysokość projektu w mm (30-424) (użytek ze spadem):     <input type="text" name="wys" id="wys" value="" /><br />
<script type="text/javascript">
var wys = new LiveValidation("wys");
wys.add( Validate.Numericality, { minimum: 30, maximum: 424 } );

</script>



działa mi tylko walidacja czyli jeżeli zaznaczę A3 to nie można nic wpisać ale nie działa mi to że się wpisują rozmiary możecie podpowiedzieć co robię źle
erix
  1. daj to na żywo
  2. jest coś w konsoli błędów?
szlipek
Kod
function valid( X ){

  if( X == 1 ){
  document.getElementById( 'szerokosc' ).disabled = true;
   document.getElementById( 'wysokosc' ).disabled = true;
 var wysokosc = new LiveValidation("wysokosc");
wysokosc.destroy(true);
 var szerokosc = new LiveValidation("szerokosc");
szerokosc.destroy(true);

 
  }else if( X == 2 ){
  document.getElementById( 'szerokosc' ).disabled = false;
  document.getElementById( 'wysokosc' ).disabled = false;
 var wysokosc = new LiveValidation("wysokosc");
wysokosc.add( Validate.Numericality, { minimum: 30, maximum: 424 } );
 var szerokosc = new LiveValidation("szerokosc");
szerokosc.add( Validate.Numericality,{ minimum: 30, maximum: 301 } );
  }
  }

function wpiszRozmiar(szer,wys){
 document.formularz.szerokosc.value=szer;
 document.formularz.wysokosc.value=wys;
 document.formularz.szerokosc.disabled=true;
 document.formularz.wysokosc.disabled=true;
}

function dowolny(){
 document.formularz.szerokosc.value='30';
 document.formularz.wysokosc.value='30';

 
}

 
 function change(that, fgcolor, bgcolor){
that.style.color = fgcolor;
that.style.backgroundColor = bgcolor;
}




</script>

<body>


A3<input type="radio" name="rozmiar" checked id="A3" value="A3" onclick="valid( '1' );" onChange="wpiszRozmiar(301,424);"  />
A4 <input type="radio" name="rozmiar" id="A4" value="A4" onclick="valid( '1' );" onChange="wpiszRozmiar(214,301);" />
A5<input type="radio" name="rozmiar" id="A5" value="A5" onclick="valid( '1' );" onChange="wpiszRozmiar(152,214);" />
A6 <input type="radio" name="rozmiar" id="A6" value="A6" onclick="valid( '1' );" onChange="wpiszRozmiar(109,152);" />
B4 <input type="radio" name="rozmiar" id="B4" value="B4" onclick="valid( '1' );" onChange="wpiszRozmiar(254,357);" />
B5<input type="radio" name="rozmiar" id="B5" value="B5" onclick="valid( '1' );" onChange="wpiszRozmiar(180,254);" />
B6 <input type="radio" name="rozmiar" id="B6" value="B6" onclick="valid( '1' );" onChange="wpiszRozmiar(129,180);" />
dowolny <input type="radio" name="rozmiar"  id="dowolny" value="dowolny" onclick="valid( '2' );" onChange="dowolny();" /><br />
</td></tr><tr><td align="right">
Szerokość projektu w mm (30-301) (użytek ze spadem):</td><td><input type="text" name="szerokosc" id="szerokosc"  value="301" onfocus="change(this,'#000000','#fbf7d7');" onblur="change(this,'#000000','#ffffff')" disabled  /><br />
</td></tr><tr><td align="right">
Wysokość projektu w mm (30-424) (użytek ze spadem):     </td><td><input type="text" name="wysokosc" id="wysokosc"  value="424" onfocus="change(this,'#000000','#fbf7d7');" onblur="change(this,'#000000','#ffffff')" disabled/><br />





Dobra udało mi się jak coś to podaję kod jak tego dokonałem
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.