Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.
Έχουμε ένα πρόβλημα με το if μέσα στην if δεν κάνει την αναλόγια στο δεύτερο 

if και ανά αναγνωρίζει μόνο το πρώτο site που έχουμε ορίσει. Όποιος μπορεί να μας δόση μια συμβουλή θα μας βοηθούσε αρκετά.

 

function displayName(form){

var browsername=window.location.href=="istoria.html";

    if (confirm('Time  ' +form.wra.value + ' atoma  ' + form.atoma.value + '   ' + form.sala.value ) == true) {

 


if (sala=sala_1){

     window.open("ble sala.html")

}

else if (sala=sala_2){

window.open("kafe sala.html")

}

    

}else {

 

x=alert("try again")

}}

 


 

<form id="form1" name="form1" method="post" action="">

             <p>

               <label>

                 <input type="radio" name="sala" value="1" id="sala_0" />

                 ble sala</label>

               <br />

               <label>

                 <input type="radio" name="sala" value="2" id="sala_1" />

                 kafe sala</label>

               <br />

               <label>

                 <input type="radio" name="sala" value="3" id="sala_2" />

                 mesea sala</label>

               <br />

             </p>

           </form>
Δημοσ.

Και στα δυο εμφωλευμενα if και else if παρατηρω οτι ο ελεγχος γινεται με ενα '=' αντι για δυο ισον '==' προφανως εκει εντοπιζεται το προβλημα

 

(edit) Η εκφραση a = b (τουλαχιστον στην javascript) επιστρεφει την τιμη της μεταβλητης b.
Οποτε για οποιαδηποτε τιμη της b (ετκος 0) η εκφραση a = b ειναι παντα αληθης και γι' αυτο 
μπορει σε ορισμενες περιπτωσεις η απωλεια του δευτερου '='  σε ελεγχο δομης επιλογης να οδηγει σε επιθυμητα αποτελεσματα.
  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...