2017-04-16 5 views
-3

Ich möchte das Register.checksum auf 1 konvertieren, so dass Block nicht das nächste Mal ausgeführt wird. Ich bin auch neu zu stackoverflow. Vielen Dank im Voraus für die help`Javascript Objektvariable ändert sich nicht

var regis = { 
     checksum : 0, 
     username : false, 
     first_name : false, 
     password : false, 
     password_check : false 
    } 

if($("#id_username").val().trim() == ""){ 
    if(regis['checksum']==0){ 
     alert(regis.checksum) 
     $("#id_username").focus(function(){ 
      $("#error_username").text("Your email id will be created with this name"); 
      regis['checksum'] = 1 
     }) 
    }else{ 
     $("#id_username").on('input', function() { 
      alert("Change to " + this.value); 
     }); 
    } 
}` 
+0

so was ist das Problem? –

+0

@Yogesh das regis.checksum ändert nur den Wert im lokalen Bereich, aber ich möchte es das globale regis.checksum ändern –

+0

ist Ihr 'regis' Objekt außerhalb des Dokuments bereit erklärt? –

Antwort

0
(function(){ 
    var regis = { 
      checksum : 0, 
      username : false, 
      first_name : false, 
      password : false, 
      password_check : false 
     }; 


    function validate(value){ 
     if(!value){ 
     $("#error_username").text("Username field cannot be left empty"); 
     } else if(value.indexOf(" ") > -1){ 
     $("#error_username").text("Username field cannot have spaces"); 
     } else { 
     $("#error_username").text(""); 
     } 
    } 

    $("#id_username").focus(function(){ 
    if(regis.checksum === 0){ 
    console.log(regis.checksum) 
    $("#error_username").text("Your email id will be created with this name"); 
    regis.checksum = 1 
    } else { 
    validate($("#id_username").val()); 
    } 
    }); 


    $("#id_username").on('input', function() { 
    if(regis.checksum === 1){ 
     validate($("#id_username").val()); 
    } 
    }); 
})() 

http://jsbin.com/paridad/edit?html,js,console,output

+0

die Funktion scheint in eine Schleife zu gehen –

+0

@ gauravsamant: Was ist der Usecase ...? –

+0

Ich möchte ein Registrierungsformular erstellen. Das Konzept ist, wenn der Benutzer 1. Fokus in Benutzername zeigt es die Zeichenfolge "Es wird Ihre E-Mail-Benutzername sein", sonst wird es angezeigt, wenn das Feld leer oder unregelmäßig ist –

Verwandte Themen