Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  Input form ja Javascript märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
redenergy
HV veteran
redenergy

liitunud: 22.03.2004




sõnum 28.02.2010 14:13:40 Input form ja Javascript vasta tsitaadiga

Tervist.
Kuidas teha nii, et on olemas link ja seda muljudes kuvab input form'i näiteks "Hello World!"?
Kommentaarid: 30 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 9
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 28.02.2010 14:18:34 vasta tsitaadiga

Inputil on väärtus value. Panedki lingile külge onklick ja sinna sisse
document.getElementById('inputID').value="Tere";return false;

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
inzinz
HV kasutaja

liitunud: 26.01.2005




sõnum 01.03.2010 21:54:10 vasta tsitaadiga

onklick asemel siis ikka onclick
<a href="#" onclick="document.getElementById('inputID').value='Tere';return false;">Kliki</a>

_________________
Upload.ee - eestimaine failiupload
Kommentaarid: 4 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 4
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 01.03.2010 23:04:03 vasta tsitaadiga

Ok, väikesed näpuvead. Vabandan.
_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 01.02.2011 17:45:22 vasta tsitaadiga

Kas see on (no ilmselt on) normaalne et JS täidetakse (näiteks) document.getElementById("mingi_id").disabled = true; esimesel korral? St. kui mul on miskine tabel ütleme nelja reaga, siis JS "mõjutab" ainult esimest. Teisi ei muuda.

<input id="mingi_id" name="jama1"> <-- anult siin möllab.
<input id="mingi_id" name="jama2">
<input id="mingi_id" name="jama2">

Ehk praeguses olukorras ma peaks tekitama JS iga rea jaoks oma "mingi_id1", "mingi_id2" jne.? Saab kuidagi teisiti?
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
Fukiku
Kreisi kasutaja
Fukiku

liitunud: 06.11.2003




sõnum 01.02.2011 18:19:46 vasta tsitaadiga

Atribuudi id väärtused peavad HTML-is igal juhul dokumendi piires unikaalsed olema - isegi siis, kui sa Javasriptiga neid elemente torkida ei kavatse.
_________________
Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist.
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 01.02.2011 18:44:07 vasta tsitaadiga

Õige küll. Seega tuleks JS õpetada menu_id1, menu_id2 jne ära tundma (loop vms.) või siis php lihtsalt JS koodi laskma välja trükkida iga elemendi jaoks. Ilmselt esimene variant oleks ilusam, kui töötaks.
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 01.02.2011 18:51:16 vasta tsitaadiga

jquery teeks asja lihtsaks...
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Ohohh
Kreisi kasutaja
Ohohh

liitunud: 13.09.2003




sõnum 01.02.2011 19:03:32 vasta tsitaadiga

See vist ei vasta standardile, kuid peaks ikkagi toimima:

      var elements = document.getElementsByTagName("input");
      for (var i = 0; i<elements.length; i++) {
        if (elements[i].getAttribute("id") == "mingi_id") {
          elements[i].disabled = true
        }
      };


Võid ju ka input tagile mingi oma väljamõeldud atribuude panna ja siis getAttribute meetodiga selle väärtust kontrollida, et mitte id välja unikaalsuse nõuet rikkuda.
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
Fukiku
Kreisi kasutaja
Fukiku

liitunud: 06.11.2003




sõnum 01.02.2011 19:09:53 vasta tsitaadiga

Ohohh kirjutas:
See vist ei vasta standardile, kuid peaks ikkagi toimima:

      var elements = document.getElementsByTagName("input");
      for (var i = 0; i<elements.length; i++) {
        if (elements[i].getAttribute("id") == "mingi_id") {
          elements[i].disabled = true
        }
      };


Võid ju ka input tagile mingi oma väljamõeldud atribuude panna ja siis getAttribute meetodiga selle väärtust kontrollida, et mitte id välja unikaalsuse nõuet rikkuda.
Selleks ei pea väljamõeldud atribuuti kasutama, atribuut class on mõeldud loogiliselt seotud elementide grupeerimiseks. Samuti on võimalik anda elemendile mitu class väärtust neid tühikuga eraldades. (class="klass1 klass2") JQuery soovitus oli ka täitsa hüva mõte - seal oli vist ka olemas kohe funktsioon stiilis hasClass, mis kontrollib, kas konkreetne klass konkreetsel elemendil olemas on ilma, et ise selle atribuudi väärtust lõikuma ja kontrollima peaks.
_________________
Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist.
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
Ohohh
Kreisi kasutaja
Ohohh

liitunud: 13.09.2003




sõnum 01.02.2011 20:02:44 vasta tsitaadiga

Tegelikult kui nii panna, siis ei tohiks küll ühtki reeglit rikkuda. Nüüd võid igale elemendile unikaalse id anda. Peaasi, et algus kokku langeb.


    function setStatusForInputs(inputIdPrefix, asDisabled) {
      var elements = document.getElementsByTagName("input");
      for (var i = 0; i<elements.length; i++) {
        var idValue = elements[i].getAttribute("id");
        if (idValue != null && idValue.indexOf(inputIdPrefix) == 0) {
          elements[i].disabled = asDisabled;
        }
      }
    }
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 02.02.2011 11:08:23 vasta tsitaadiga

Ohohh kirjutas:
Tegelikult kui nii panna, siis ei tohiks küll ühtki reeglit rikkuda. Nüüd võid igale elemendile unikaalse id anda. Peaasi, et algus kokku langeb.


    function setStatusForInputs(inputIdPrefix, asDisabled) {
      var elements = document.getElementsByTagName("input");
      for (var i = 0; i<elements.length; i++) {
        var idValue = elements[i].getAttribute("id");
        if (idValue != null && idValue.indexOf(inputIdPrefix) == 0) {
          elements[i].disabled = asDisabled;
        }
      }
    }

Tänud, panin asja true - false režiimis tööle. thumbs_up.gif
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
Fukiku
Kreisi kasutaja
Fukiku

liitunud: 06.11.2003




sõnum 02.02.2011 11:30:05 vasta tsitaadiga

Soovitaks siiski tuleviku mõttes, kui rohkem JavaScripti keemiat plaanis on, vaadata mõne JavaScript raamistiku poole, mis üsna palju asju lihtsamaks ja kindlalt kõigis brauserites töötavaks teevad - näiteks jQuery.
_________________
Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist.
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 02.02.2011 13:41:36 vasta tsitaadiga

Mhmh, korra olen sellega mässanud ...

Mõtlesid et teen midagi kerget, lihtsalt väike kirss php koogi peale. icon_wink.gif
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 02.02.2011 13:54:54 vasta tsitaadiga

jquery ongi lihtne:

javascript:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2.         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3.  
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  5. <head>
  6. <script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
  7.  
  8. <script type="text/javascript">
  9.   $(document).ready(function(){
  10.     $('#link').click(function(){
  11.                         $(':input[type=text]').val('mingi text');
  12.                         return false;
  13.                 });
  14.   });
  15. </script>
  16. </head>
  17. <body>
  18. <a href="" id="link">link</a>
  19. <form>
  20.         <input type="text" />
  21.         <input type="text" />
  22.         <input type="text" />
  23.         <input type="text" />
  24. </form>
  25. </body>
  26. </html>


ja 100% töötab kõikides enamlevinud brauserites: http://docs.jquery.com/Browser_compatibility

_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
siinus
HV Guru
siinus

liitunud: 20.01.2007




sõnum 02.02.2011 14:04:15 vasta tsitaadiga

kas
id="mingi_id[]"

ei oleks lahendus?
siis foreachiga kõik läbi lasta

_________________
suck less | ANNA MU SAI!
Ma arvasin, et see oli Priit, aga tegelikult oli Tõnu,
Kommentaarid: 66 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 59
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
keevitaja
AM 10 aastat
keevitaja

liitunud: 05.11.2001




sõnum 02.02.2011 14:05:57 vasta tsitaadiga

see vist rohkem post teema...
_________________
Hinnavaatlus ei ole koht arvamuse avaldamiseks!
Kommentaarid: 51 loe/lisa Kasutajad arvavad:  :: 1 :: 3 :: 40
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 03.02.2011 22:12:34 vasta tsitaadiga

Pean class peale kolima, samade id kasutamine on sutsu illegaalne, nagu ka arvata võis. W3 valitaator pistis kisama. icon_biggrin.gif
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
Ohohh
Kreisi kasutaja
Ohohh

liitunud: 13.09.2003




sõnum 03.02.2011 22:34:52 vasta tsitaadiga

idValue.indexOf(inputIdPrefix) == 0 korral võivad ID'd unikaalsed olla. Ainult algusots peab kokku langema.
Ehk, kui sul on menüü ID'd main_menu_1, main_menu_2,main_menu_3 ja otsingus kasutad väärtust "main_menu", siis see mõjub neile kõigile.
Kommentaarid: 6 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 6
tagasi üles
vaata kasutaja infot saada privaatsõnum
Le Inc
HV Guru
Le Inc

liitunud: 06.09.2002



Autoriseeritud ID-kaardiga

sõnum 04.02.2011 09:21:12 vasta tsitaadiga

Ohohh kirjutas:
idValue.indexOf(inputIdPrefix) == 0 korral võivad ID'd unikaalsed olla. Ainult algusots peab kokku langema.
Ehk, kui sul on menüü ID'd main_menu_1, main_menu_2,main_menu_3 ja otsingus kasutad väärtust "main_menu", siis see mõjub neile kõigile.

Ok, proovib homme. Kui töötaks oleks tore, sest klassid on tegelikult erinevad, css "ära broneeritud".

Töötab. thumbs_up.gif
Kommentaarid: 56 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 54
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  Input form ja Javascript
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.