2009-07-15 33 views
5

Jeditable eklentisinin, tam geri çağırma işlevini kullanarak AJAX'tan bir geriçağırım işlevi kullanması için bazı yanıtlar görüyorum.JADANAL CANCEL geri arama AJAX geri arama?

Jeditable'ın SUBMIT düğmesi için bir geri arama işlevi olduğunu biliyorum, bu nedenle CANCEL düğmesi için geri arama yapmanın bir yolu olup olmadığını bilmek isterim. Eklenti dokümanlarında bulamadım. cevap için

sayesinde

Carlos

PD. Bu AJAX geri çağırma I TAM için bkz kaynağıdır:

$("#editable_text").editable(submitEdit, { 
      indicator : "Saving...", 
      tooltip : "Click to edit...", 
      name : "Editable.FieldName", 
      id : "elementid", 
      type : "text", 
}); 
function submitEdit(value, settings) 
{ 
    var edits = new Object(); 
    var origvalue = this.revert; 
    var textbox = this; 
    var result = value; 
    edits[settings.name] = [value]; 
    var returned = $.ajax({ 
      url: "http://URLTOPOSTTO", 
      type: "POST", 
      data : edits, 
      dataType : "json", 
      complete : function (xhr, textStatus) 
      { 
       var response = $.secureEvalJSON(xhr.responseText); 
       if (response.Message != "") 
       { 
        alert(Message); 
       } 
      } 
      }); 
    return(result); 
} 

cevap

4

Evet, jEditable kendinden önce geri durumuna kontrolünü sıfırlar önce daha genel iptal edebilir veya tıklayarak çağrılan bir "onreset" parametresi vardır tıklandı. Kodunuza bu ekleyin: Bu jquery.jeditable.js dosyanın başlığında belgelenmiştir

$("#editable_text").editable(submitEdit, { 
    //... 
    onreset: jeditableReset, 
    //... 
}); 

function jeditableReset(settings, original) { 
    // whatever you need to do here 
} 

.

Başka bir not - eğer bulanıklığı göndermezseniz (örnekte görünmüyorsanız), onreset olayı da o zaman patlayacaktır.

+0

Çok teşekkürler, test ettim ve bir çekicilik gibi çalışıyor, aynı zamanda onedit geri çağırma, görüyorsunuz, asıl sorun nasıl bir düzenleme düğmesinin jeditable düzenini gizleyebilirim ve iptal et/gönder üzerine tekrar göstermekti. Peki sadece bir $ ('# div') çağırın. veya bu geri çağrıların içinde .show(). – Carlitux