2009-11-09 4 views
1

J'utilise le plugin modifier en place: http://arashkarimzadeh.com/jquery/7-editable-jquery-plugin.htmlmodifier en place jquery

I't fonctionne très bien! J'ai juste besoin de quelque chose pour vérifier si le nouveau texte est vide. Si c'est le cas, nous devons revenir en arrière et montrer une erreur d'alerte.

Le code:

 $('.name').editable({ 
     submit:'Gem',   
     cancel:'Fortryd',   
     onSubmit: function(content){ 
      $.post('/admin/ajax/products/edit_category/',{ category_name:$(this).text(),category_id: this.parent().attr('id') }) 
      } 
    }); 

Quelqu'un peut-il s'il vous plaît aidez-moi! : -/

Répondre

2

vérifier la propriété content.current dans la fonction onSubmit avant de poster.
(il y a aussi une propriété content.previous qui peut être utilisé pour vérifier les changements)

Exemple:

$(document).ready(function() { 
    $("#div1").editable({ 
    type  : 'textarea', 
    submit : 'OK', 
    cancel : 'Cancel', 
    onSubmit : function(content) { 
     alert(content.current+':'+content.previous); 
    } 
    }); 
}); 
+0

pouvez-vous montrer un exemple? – william

0

Changer votre onSubmit:

onSubmit: function(content){ 
     if ($(this).val()=='') { 
     alert("can't be blank"); 
     } else { 
      $.post('/admin/ajax/products/edit_category/',{ category_name:$(this).text(),category_id: this.parent().attr('id') });  
     } 
    } 
0

J'ai trouvé une solution:

function end(content){ 
     if (content.current == '') {     
       $(this).text(content.previous); 
      }else{ 
       $.post('/admin/ajax/products/edit_category/',{ category_name:$(this).text(),category_id: this.parent().attr('id')}); 
      }    
     } 

Ses œuvres, et va montrer la données précédentes