2010-12-04 6 views
0

anwenden Ich habe ein Login-Formular, das ich mit jQuery und AjaxForm Plugin einreichen. Die Form einreicht gut und ich erhalte die JSON-Antwort aok:JSON Antwort auf verschiedene divs mit jQuery

{"username":"Enter your username","password":"password must not be empty"} 

Meine Form ist wie folgt kohana Framework:

<?php echo form::open('login',array('id'=>'login'));?> 
<div id="username_errors"></div>   
<?php echo form::label('username','Username');?><br/> 
<?php echo form::input('username','',array('id' => 'username','class'=>'login   text ui-widget-content ui-corner-all'));?><br/> 
<div id="password_errors"></div>   
<?php echo form::label('password','Password');?><br/> 
<?php echo form::password('password','',array('id' => 'password','class'=>'text ui-widget-content ui-corner-all'));?><br/> 

<?php echo form::label('remember_me','Remember Me'); 
    echo form::checkbox('Remember Me', 'remember_me', FALSE);?><br/> 

<?php echo form::submit('submit','Login'); 
    echo form::close();?> 

Meine jQuery:

jQuery('.form #login').ajaxForm({ 
    data: jQuery(this).serialize(), 
    dataType:'json', 
    url:'login', 
    success: function(data){ 
     if (data.redirect == 'home') { 
     window.location.href=data.redirect; 
     }//else append error messages to relevant divs 

     } 
     }); 

Ich möchte nimm meine Fehlermeldungen (falls es welche gibt) und befülle die relevanten divs mit den Fehlermeldungen. Irgendwelche Ideen?

Antwort

1

Ich glaube, Sie ziemlich nah dran sind, versuchen Sie:

jQuery('.form #login').ajaxForm({ 
    data: jQuery(this).serialize(), 
    dataType:'json', 
    url:'login', 
    success: function(data){ 
     if (data.redirect == 'home') { 
      window.location.href=data.redirect; 
     } else { 
      $('#username_errors').html(data.username);  
      $('#password_errors').html(data.password);   
     } 
    }); 
+0

Schöne. Ich glaube, ich hatte einen Block. Ich glaube, ich suchte nach etwas Kompliziertem. Prost. –