Ich verwende https://vitalets.github.io/x-editable/docs.html als Auswahlelement. Zusätzlich zum Senden des neuen Werts an den Server (d. H. S, p) möchte ich auch den vorherigen Wert (d. H. B) senden. Das folgende Skript wird dies zunächst tun, sendet aber nur den ursprünglichen Wert (d. H. P), selbst wenn es mehrmals geändert wird und der neue vorherige Wert nicht mehr p ist.Vorherigen Wert für xeditable an den Server senden
<a href="javascript:void(0)" class="doc-type" data-value="b"></a>
$('.doc-type').editable({
type: 'select',
placement: 'right',
title: 'Document Type',
source: [{value:'b',text:'Buy'},{value:'s',text:'Sell'},{value:'p',text:'Project'}],
//params: {task:'saveDocType',controller:'portal',cid:ayb.component.id,CSRF:ayb.CSRF,doc_id:function(){console.log(this);}},
params: function(params) {
//originally params contain pk, name and value
delete(params.name);
params.task = 'saveDocType';
params.controller = 'portal';
params.cid = ayb.component.id;
params.CSRF = ayb.CSRF;
params.doc_id=$(this).parent().parent().data('id');
params.v_old=$(this).data('value');
return params;
},
url: 'index.php',
pk: function(){return $('#id').val();},
error: function (response, newValue) {
//Unlike other validation, save function to return non 200 header.
return response.responseText;
},
});