2016-10-26 5 views
1

ist es möglich, den var codeError nach Funktion zu bekommen? Ich muss diesen Wert auf eine Variable $ Code in PHP posten.erhalten Wert von var in jQuery

$(document).ready(function() { 
    $('#cognome').bind('blur', function(){ 
     var cog = $(this).val(); 
     if(cog == "" || cog.length<=2) { 
      $('#chkCognome').addClass("invalid").removeClass("valid"); 

      var codeError=1; 
     } else { 
      $('#chkCognome').addClass("valid").removeClass("invalid"); 

      var codeError=0; 
     } 
    }); 
}); 

Antwort

2

Sie benötigen codeError außerhalb der if-Anweisung zu erklären und möglicherweise außerhalb Ihrer Veranstaltung als auch die Bindung, je nachdem, auf welcher Ebene Sie es wollen an zugänglich sein.

var codeError; // accessible within all subsequent functions and event handlers 

$('#cognome').on('blur', function(){ 
    if (cog === '') { 
     codeError = 1; 
    } 
    else { 
     codeError = 0; 
    } 
}); 
2
<html> 
    <form action="error.php" method="post"> 
      <input type="hidden" value="0" name="code"> 
    </form> 
</html>  

<script> 
    $(document).ready(function() { 

      var codeError = $(input).val(0); 

      if(error) { $(input).val(1); } 

    }) 
</script> 

müssen Sie codeError außerhalb else if-Anweisung definieren, noch besser Sie wirklich keine andere Erklärung brauchen. Wenn Sie es an PHP übergeben müssen, verwenden Sie einfach <form>

3

Sie müssen es außerhalb des Bereichs der bind() Funktion deklarieren. Es würde ungefähr so ​​aussehen:

$(document).ready(function() { 

    var codeError; //Declare outside the scope of the function. 

    $('#cognome').bind('blur', function(){ 
     var cog = $(this).val(); 
     if(cog == "" || cog.length<=2) { 
      $('#chkCognome').addClass("invalid").removeClass("valid"); 

      codeError=1; 
     } else { 
      $('#chkCognome').addClass("valid").removeClass("invalid"); 

      codeError=0; 
     } 
    }); 
});