Habilitando el elemento jQuery contextMenu en una solicitud ajax

Estoy intentando actualizar el elemento del menú contextual si las solicitudes de ajax modifican el contenido de mi div.

Esto es lo que quiero decir que tengo un div como este:

Y la parte de jquery del menú contextual (esto sucede solo una vez cuando el cuerpo se carga):

 $.contextMenu({ selector: '.message', trigger: 'left', callback: function(key, options) { var m = "clicked: " + key; window.console && console.log(m) || alert(m); }, items: { "update": { name: "Update", disabled: function(key, opt) { return (this.data("options").update === "NO") }, }, "delete": { name: "Delete", disabled: function(key, opt) { return (this.data("options").delete=== "NO") } //etc. rest of the code 

Estoy buscando volver a crearlo cuando ocurra alguna solicitud ajax o deshabilitar / habilitar elementos de alguna manera

Así que ahora suceden algunas solicitudes de ajax y, de manera div.message estoy intentando actualizar div.message data-option porque pensé en habilitar / deshabilitar botones como este:

 In ajax.success function : - disable or enable menu items 

--------Actually--------Simplified

En realidad, esta pregunta / respuesta es muy similar a mi problema actual:

Deshabilitar y habilitar el menú contextual de jQuery

Quiero habilitar / deshabilitar el elemento de menú de contexto con un clic en el botón, si pudiera hacerlo en este ejemplo ficticio, creo que también podría manejar la solicitud de ajax.

Utilicé la opción de build para agregar nuevos elementos, puede ver que puede hacer con los elementos que desee aquí: http://jsfiddle.net/oceog/Tvv4P/1/

HTML:

     

JS:

 $.contextMenu({ selector: '.context-menu-one', build: function($trigger, e) { console.log(e); return { callback: function(key, options) { var m = "clicked: " + key; console.log(m); //window.console && console.log(m) || alert(m); }, items: items }; } }); var items = { "edit": { name: "Edit", icon: "edit" }, "cut": { name: "Cut", icon: "cut" }, "copy": { name: "Copy", icon: "copy" }, "paste": { name: "Paste", icon: "paste" }, "delete": { name: "Delete", icon: "delete" }, "sep1": "---------", "quit": { name: "Quit", icon: "quit" }}; var newitemN=0; $('#add').click(function() { var newitem={}; newitem['newitem_'+newitemN]={ name: 'new item #'+newitemN, icon: "copy" }; newitemN++; $.extend(items,newitem); }); $('#disable_cut').click(function() { items.cut.disabled=true; }); $('#enable_cut').click(function() { items.cut.disabled=false; });