ugrás a tartalomhoz

miért fut le a függvény?

cica · 2014. Jan. 28. (K), 21.03
Üdv!

Szeretnék készíteni egy oldalt amin pozitív és negatív számokat vonunk össze. Az a kérdésem miért fut le be() függvény a gombra kattintva. Másodszor nem hívtam meg.
<html>
 <head>
  <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
  <title>Egész számok összeadása kivonása</title>
 </head>
<body >
<h1><div id='szam' ></div></h1>
<script>
valasz=1; var x=''; y=0; v=0; s=''; i=0; 
 be(); 
function be()
  {	
	a=Math.floor((Math.random()*9)+1); 
	b=Math.floor((Math.random()*2)+1); 
	if (b==2) {a*=-1;x1=a;} else { x1='+'+a;}
    s=x1;    hosz=a;  
	if ( valasz == 1 ) { 
	for (i=1;i<6; i++)
	{
	a=Math.floor((Math.random()*9)+1); 
	b=Math.floor((Math.random()*2)+1); 
	c=Math.floor((Math.random()*2)+1);
		if (c==2) { x='-';} else {x='+';}
		if (b==2) {
				a=a*(-1); 
				s+=x+'('+a+')';
				if (c==2)
				 { hosz-=a;}  else {hosz+=a;}
				   } else 	{
				    x1='+'+a; 
				   s +=''+x+'('+x1+')'; //az '' azért kell hogy szöveg maradjon
				     
					 if (c==2) { hosz-=a;} else { hosz+=a;}  
							}		
	 } 					}
	 
	 document.getElementById("szam").innerHTML= s+'='+hosz+'<form name="szgep2" id="szgep2"><input type="text" name="er" id="er" style="font-size: 16pt" size="4" maxlength="4"><br /><br /><input type="submit" value=" Következő " style="font-size: 16pt" onclick="ell()"  /></form>' ;
	 }
   function ell()
   { 
   a=(document.szgep2.er.value);
   if (hosz==a) {osz+=10;} else {  alert('Hibás válasz!'); }
	}   
  
</script>
 </body>
 
</html>
 
1

az ki van zárva, mer' azt nem

szabo.b.gabor · 2014. Jan. 28. (K), 22.32
az ki van zárva, mer' azt nem tudom.

most komolyan. MI EZ?!

azért mert az ell() függvény nem akadályozza meg a form submit-ot, újratölt az oldal és ezért újra lefut a be()?

de mégis mi ez a trágya amit idehánytál? szóval nem érzed kicsit gáznak? előnézetben átolvasod és szerinted ez tényleg egy kérdés, amire lehet válaszolni?

bocs srácok..
2

Segítettél. Gondoltam én is

cica · 2014. Jan. 29. (Sze), 03.16
Segítettél. Gondoltam én is erre. Valami egyszerű oka van, de nem jövök rá.

Vártam hogy hasonló hangnemben lesz válasz, már ez itt nem lep meg. Láttam jónéhány hozzászólást.

Biztos lehet szebb kódot is írni. Biztos lehet más hangnemben is válaszolni.
3

ha mondjuk tennél egy kis

szabo.b.gabor · 2014. Jan. 29. (Sze), 10.25
ha mondjuk tennél egy kis rendszert a kódodba meg az egészhez való hozzáállásod kicsit szigorúbban vennéd, lehet hogy jobban boldogulnál.

a hangnemet a saját hozzáállásod alapozza meg, hogy képtelen vagy minimális energiát fordítani a tördelésre, tehát szarsz ránk.

mi van ha tördeled?
látom, hogy hol kezdődik, végződik egy-egy függvény, a form.
könnyebben megtalálom az onsubmit dolgot.
könnyebben megtalálom mit ad vissza az ell() függvény.
(és ez rád is igaz drága)

és rájövök a hibára első ránézésre.

ehelyett.
ránezek.
mi a faszom ez?!

kifakad belőlem, de azért közben átrágom magam rajta, válaszolok is nagyjából.

eztán nagyon helyesen megállapítod, hogy lehet más hangnemben is válaszolni.

bizony lehet más hangnemben is válaszolni, de akkor ezt bővítsük ki az egész folyamatra (kérdésre és rád).

sok sikert!
4

Ez is hasonló hangnem, vigyázat

bamegakapa · 2014. Jan. 29. (Sze), 13.28
Ha láttál már jónéhány hozzászólást, a felháborodás közben a bennük elhangzó jótanácsokon is elgondolkozhattál volna.

Tudod, a kód olvashatóságának fontosságát általában nem győzzük hangsúlyozni, nem azért, mert vaskalapos idióták vagyunk, akik zabolázhatatlan szabadon szárnyaló kis lelkedet akarják kegyetlen rabigába hajtani, hanem azért, mert számtalan programozógeneráció döbbent rá, hogy ez nem hülyeség.

Az átlátható kód készítése a készítő számára is hatalmas előny - nem csoda, hogy a saját kódodat sem látod így át. De ha másoknak megmutatod, kifejezetten illetlenség, sőt (mivel én is botrányos hangnemet szoktam megütni) bunkóság ilyen formában eléjük rakni, főleg mivel ezek az emberek (mi) a saját drága idejükből önként áldoznak időt olyasmire, ami semmilyen formában nem kötelességük. Ne azzal rabold az időnket, hogy fejtegessük a kis programocskádat, tegyél meg mindent, hogy minél könnyebben segíthessünk.

Ha mást nem is, de legalább a behúzásokat legyél már szíves rendbe rakni. Komolyan, egy sima JS beautifieren áteresztve máris egy fokkal jobban fest az egész.

Ennek ellenére mégis valaki vette a fáradságot, és elmondta neked, hogy mi a probléma (a form elküldése oldalújratöltést eredményez, ez teljesen normális), akkor meg sírsz, hogy jaj de te érzékeny vagy ám! Minek jössz ide, ha ekkora bunkók vannak itt, akik csak bántják az őstehetségeket?

Addig is még pár tipp: olvass utána a var szócska használatának, és hogy miért kéne mindig használni, amikor új változót vezetsz be. Ha új vagy a Javascriptben, akkor különösen felejtsd el a w3schools és társaik oktatóanyagaiban prominens helyet betöltő inline eseménykezelőket (HTML-ben onclick attribútum és társai), vedd úgy hogy nem léteznek és tanuld meg az addEventListener használatát, legalábbis ha nem eleve elavult tudást akarsz magadra szedni. Ezt utána úgyis kénytelen leszel megtanulni majd, jobb rögtön ezzel kezdeni.
5

Nem lehetne annyit írni, hogy

cica · 2014. Jan. 29. (Sze), 14.26
Nem lehetne annyit írni, hogy rakd már rendbe a kódod mert olvashatatlan. Függvényeket tagold vagy hasonló.

Amit ide raktam az töredéke az egésznek, csak annyit tettem ide amennyit a megértéshez szükséges. Azt már tudom hogy elég lett volna egyszerűbb kód is, pl. kiíratni egy számot és azt ellenőrizni.

Hidd el próbálkoztam vele nem kicsit.

A függvényeket //********************** sorral szoktam elválasztani.

Az addEventListener tippet köszi.
8

Valószínűleg azért így írta,

bamegakapa · 2014. Jan. 29. (Sze), 15.04
Valószínűleg azért így írta, mert időről időre be szoktunk sokallni a kérdezőktől, akik úgy szeretnék igénybe venni ingyenes szolgáltatásainkat, hogy a kérdésükből a minimális igyekezet és tisztelet sem süt le. Ilyenkor néha befordulunk, néha megfogadjuk, hogy többé ezeknek inkább semmit, néha egy ideig nem is jövünk, néha beszólunk, hátha egy atyai pofon segít - embere válogatja.

Az egész egy sziszifuszi meló, ritka sikerélményekkel, de valamiért mégis csináljuk, talán azért, mert a szakma tele van kóklerekkel, és szeretnénk kicsit jobbá tenni az egészet. Ennek ellenére úgy érződik, többségükben a kezdők is inkább kóklerek szeretnének lenni.

Hát ez.
6

igazad van. elnézésedet kérem

szabo.b.gabor · 2014. Jan. 29. (Sze), 14.40
igazad van. elnézésedet kérem a túlzásokért és sértő megjegyzésekért.

figyelni foglak ;)
7

Nekem csak egy javaslatom

Karvaly84 · 2014. Jan. 29. (Sze), 14.53
Nekem csak egy javaslatom lenne: nézegesd át mások kódjait, és próbáld értelmezni. Ez sok szempontból hasznos.

Látogass el a GitHub oldalra pl. Millió számra találsz olyan kisebb projekteket, amikből tanulhatsz, nem csak a kód tagolásával kapcsolatban.