Autor | Zpráva | ||
---|---|---|---|
luma64 Profil |
#1 · Zasláno: 11. 6. 2013, 11:11:27
Zdravim, neviem ako vyhodnotit podmienku if ( czs!=="sala_nazov_czs" && cos!=="sala_nazov_cos") ; cely kod je popisany nizsie. Ide o to, ze js ma otestovat, ci je v listboxoch zadana ina hodnota ako 'sala_nazov_cos' resp 'sala_nazov_czs'. Ak su z listboxoch do js poslane parametre s tymito hodnotami, znamena to, ze v oboch listboxoch bola vybrana hodnota, pricom je pripustne vybrat hodnotu iba z jedneho listboxu. Snad som to nepopisal komplikovane :)
var cos=document.forms["myForm"]["sala_nazov_cos"].value; alert (cos); if (cos=="sala_nazov_cos") { alert("Sála COS nie je vyplnená!"); // return false; } var czs=document.forms["myForm"]["sala_nazov_czs"].value; alert (czs); if (czs=="sala_nazov_czs") { alert("Sála CZS nie je vyplnená!"); // return false; } if ( czs!=="sala_nazov_czs" && cos!=="sala_nazov_cos") { alert ("Vyberte buď sálu CZS alebo COS !"); } |
||
Joker Profil |
#2 · Zasláno: 11. 6. 2013, 11:31:11
luma64:
„neviem ako vyhodnotit podmienku if ( czs!=="sala_nazov_czs" && cos!=="sala_nazov_cos") ;“ Jestliže hodnota czs není "sala_nazov_czs" a zároveň hodnota cos není "sala_nazov_cos". Z popisu jsem nepochopil, kde je problém. Tip: Pro lepší přehlednost je, zejména u začátečníků, dobré složitější výrazy závorkovat podle zamýšleného pořadí vyhodnocování i v případech, kdy to není nezbytné (tzn. kdy pořadí vyhodnocování odpovídá výchozím prioritám operátorů). if ((czs !== "sala_nazov_czs") && (cos !== "sala_nazov_cos")) |
||
_es Profil |
#3 · Zasláno: 11. 6. 2013, 11:32:40
luma64:
Čo je ten „listbox“? Formuláře » select>? „ako vyhodnotit podmienku“ Nerozumiem dotazu. Na čo sa pýtaš? Či je tá tá „podmienka“ zostavená správne? Ten kód ti nefunguje tak, ako by si chcel, alebo čo za radu vlastne čakáš? |
||
luma64 Profil |
#4 · Zasláno: 11. 6. 2013, 11:43:18
Či je tá podmienka správne.
|
||
_es Profil |
#5 · Zasláno: 11. 6. 2013, 11:44:44
luma64:
A nefunguje ti kód ako má, alebo...? |
||
luma64 Profil |
#6 · Zasláno: 11. 6. 2013, 11:46:44
Uz je to v poriadku. Ďakujem.
|
||
pako Profil * |
#7 · Zasláno: 11. 6. 2013, 11:47:08
[#1] luma64
predpokladam ze mas dva listboxy, ktorych prva polozka je sala_nazov a dalsie polozky su tie, ktore si ma uzivatel vybrat, vtedy by som tie hodnoty skusal nejak takto (netestovane): if (czs==="sala_nazov_czs" && cos !== "sala_nazov_cos") {hodnotu ma druhy listbox} else if (czs!=="sala_nazo_czs" && cos ==="sala_nazov_cos) {hodnotu prvy listbox} else if (czs==="sala_nazov_czs" && cos ==="sala_nazov_cos") {hodnotu nema ani jeden listbox} else if (czs!=="sala_nazov_czs" && cos !=="sala_nazov_cos") {hodnotu maju obidva listboxy} |
||
luma64 Profil |
#8 · Zasláno: 11. 6. 2013, 12:00:05
Ide o 2 listboxy, pricom hodnoty mozu byt iba z jedneho. Default su to hodnoty 'sala_nazov_czs' resp 'sala_nazov_czs'. Po ulozeni formu skocim do js a testnem:
if (czs==="sala_nazov_czs" && cos ==="sala_nazov_cos"). To znamena, ze ani v jednom nebola vybrana ina hodnota ako defaultna. Dal som si tie hodnoty predtym cez alert vypisat. Podmienka If ich tak ale nevyhodnoti a kod v jeho vnutri sa nevykona. |
||
_es Profil |
#9 · Zasláno: 11. 6. 2013, 12:05:26
luma64:
„Po ulozeni formu skocim do js“ To znamená konkrétne čo? Kde máš ten formulár? Čo znamená, že ho „uložíš“? |
||
luma64 Profil |
#10 · Zasláno: 11. 6. 2013, 12:11:39
form a js su v tej istej stranke ; form v php kode. Ulozim znamena vykonanie scriptu volaneho v osubmite po submite formu:
<form name="myForm" action="novaoperacia.php" method="post" onsubmit="return validateForm()";> . . <p class="submit"><input type="submit" value="Uložiť" name="submit" > |
||
pako Profil * |
#11 · Zasláno: 11. 6. 2013, 12:16:32
jsfiddle
ked chces mat inu ako defaultnu hodnotu len v jednom listboxe tak musis pouzit viac podmienok na rozne pripady ktore mozu nastat... |
||
_es Profil |
#12 · Zasláno: 11. 6. 2013, 12:25:26
luma64:
Ak som to pochopil správne, snažíš sa v JS zostaviť operátor XOR? |
||
luma64 Profil |
#13 · Zasláno: 11. 6. 2013, 20:56:30
Dakujem vsetkym. Je to ok.
|
||
Časová prodleva: 11 let
|
0