2009-07-15 9 views
5

Ich sehe einige Antworten für das Jeditable-Plugin, um eine Rückruffunktion von AJAX zu verwenden, die vollständige Rückruffunktion verwendet.Jeditable CANCEL-Rückruf vom AJAX-Rückruf?

Ich weiß, dass die Jeditable eine Rückruffunktion für die SUBMIT-Taste hat, also würde ich gerne wissen, ob es einen Weg gibt, einen Rückruf für die CANCEL-Taste zu haben? Ich habe auf den Plugin-Dokumenten nicht gefunden.

Danke für Ihre Antwort,

Carlos

PD. Dies ist die Quelle I von AJAX Rückruf für COMPLETE siehe:

$("#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); 
} 

Antwort

4

Ja, es ist ein „onreset“ Parameter, der aufgerufen wird, wenn Sie auf Abbrechen klicken, oder allgemeiner, bevor Jeditable die Steuerung wieder in den Zustand, bevor es zurücksetzt wurde geklickt. Fügen Sie diese auf Ihren Code:

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

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

Diese in der Kopfzeile der jquery.jeditable.js Datei dokumentiert.

Noch ein Hinweis: Wenn Sie keine Unschärfe einreichen (Sie erscheinen nicht im Sample), wird das Onreset-Ereignis ebenfalls ausgelöst.

+0

Vielen Dank, ich getestet und es funktioniert wie ein Charme, auch die Onedit Callback, Sie sehen, das eigentliche Problem war, wie konnte ich eine Bearbeitungsschaltfläche Edit Jeditable ausblenden und wieder auf Abbrechen/Senden. Nun, nenne einfach $ ('# div'). Hide(); oder .show() innerhalb dieser Rückrufe. – Carlitux