Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sh4d0w: Árnyékos sarok
- MasterDeeJay: i7 4980HQ asztali gépben (vs i7 4770)
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Magga: PLEX: multimédia az egész lakásban
- gban: Ingyen kellene, de tegnapra
- juhi11: Karácsony esély, hogy észrevegyük: mások is valakik - még Isten is
- btz: Internet fejlesztés országosan!
-
LOGOUT
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Azazello-
#1730
üzenetére
Hali!
A readonly attribútum XHTML-ben helyesen így néz ki (a readonly="" helyett):
readonly="readonly"
w3schools: HTML <input> readonly Attribute</input>
Ez a lezárás helytelen, magában az input elemben kell odatenni a lezárást, korábban jól írtad:
<input ... />for (i=0;i<names.lenght;i++)
lenght -> length
nem mindegy...getNames() a függvény neve, Te meg getName() névvel hívod meg...
A radio elemeknél legyen a name attribútum azonos, hogy ne lehessen mindkettőt kiválasztani, hanem közülük kelljen az egyiket választani.
Ezenkívül nem kell külön div-be rakni, gondolom nem célod elválasztani őket. Nem is ajánlott, mert abból csak problémáid lehetnek.
Az onselect esemény itt helytelen, ugyanis az a következő elemekre használható:
<input type="text">, <textarea>
Legyen helyette inkább onclick.
példa (getName, getNumber fv.nevekkel):
<div id="middle_container">
<input type="radio" onclick="getName();" id="name_number" name="name_or_number" />Names<br />
<input type="radio" onclick="getNumber();" id="number_name" name="name_or_number" />Numbers
</div>Ezenkívül számomra nem túl logikus, hogy pont a Names mezőnél getNumber(); függvényt hívsz, amikor ott gondolom épp a névre vagy kíváncsi, a Numbers résznél meg getNames() függvényt szeretnél hívni - ami mellesleg rosszul van megírva.

function getNumber(){
var x= document.getElementById("name_number");
document.write(numbers[i] + "<br />");
}Nem értem, mit akartál ezzel a függvénnyel, konkrétan semmi értelme.
Ugyanis numbers-nek mi az i-edik eleme? Te asszociatív tömböt használsz, pl. nincs olyan, hogy numbers[4], mivel csak sztringekkel éred el az elemeidet, pl. numbers["Shiela"]var numbers = nev Array();
nev?
helyette inkább new...text_imput
-> text_input
Ezeket az elírásokat talán átnézhetted volna, mielőtt írsz a topicba...Azt sem értem, egyáltalán a szövegmezőbe beírtakat hogyan akarod elérni, ha semmi ilyen nincs a kódodban...
Na, a lényeg, hogy készítettem egy jól működő változatot (kipróbáltam):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Numbers</title>
<!-- JS -->
<script type="text/javascript">
<!--
var phonebook = new Array();
phonebook["Shiela"] = "3453 456546 787";
phonebook["Gerard"] = "2311 345455 335";
phonebook["David"] = "8786 578575 555";
function getData(what){
var text_input=document.getElementById("text_input").value;
var text_output=document.getElementById("text_output");
var found=0;
for(var name in phonebook){
var number=phonebook[name];
if(what==null || what=="number"){ //ha nem adtunk meg paramétert (vagy number-t adtunk meg), akkor alapértelmezettként a névhez tartozó számot fogja kiírni
if(name==text_input){
text_output.value=number; //szám kiírása
found++; //találtunk
break; //felesleges továbbmenni
}
}
else{ //egyébként (ha bármilyen egyéb paramétert megadtunk) a számhoz tartozó nevet fogja kiírni
if(number==text_input){
text_output.value=name; //név kiírása
found++; //találtunk
break; //felesleges továbbmenni
}
}
}
if(found==0){ //ha nincs találat
text_output.value=(what==null || what=="number")?"Nincs ilyen név a telefonkönyvben.":"Nincs ilyen szám a telefonkönyvben.";
}
}
// -->
</script>
</head>
<body>
Feladat: "a nev beirasa utan a radiobutton segitsegevel ha a numbers-re kattintunk, ki kellene, hogy adja a nevekhez tartozo telefonszamokat."
<div id="top_container">
<input type="text" name="text_input" id="text_input" />
</div>
<div id="middle_container">
<input type="radio" onclick="getData('name');" id="name_number" name="name_or_number" />Names<br />
<input type="radio" onclick="getData('number');" id="number_name" name="name_or_number" />Numbers
</div>
<div id="bottom_container">
<input type="text" readonly="readonly" name="text_output" id="text_output" />
</div>
</body>
</html>A CSS-részt kiszedtem, az most úgysem lényeges.
Remélem megfelel.

Új hozzászólás Aktív témák
- Honor 400 Lite / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- LG 27GR95QE - 27" OLED / QHD 2K / 240Hz & 0.03ms / NVIDIA G-Sync / FreeSync Premium / HDMI 2.1
- magyar billentyűzet - 136 - Lenovo Legion Pro 7 (16IRX9H) - i9-14900HX, RTX 4080 - 4 ÉV GARANCIA!
- Mini Pc HP ProDesk 600 G2 G3 G4 /// 6-8. gen //// i3 / i5 /// garancia /// Budapest / MPL / Foxpost
- ÚJ HP Omen 16 - 16,1" FHD 144Hz - i5 13420H - 16GB - 512GB - RTX 4050 - Win11 - 3 év garancia
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

Ugyanis numbers-nek mi az i-edik eleme? Te asszociatív tömböt használsz, pl. nincs olyan, hogy numbers[4], mivel csak sztringekkel éred el az elemeidet, pl. numbers["Shiela"]
