Проблема в том, что я хочу отредактировать ячейку в таблице без обновления страницы, поэтому я решил использовать JSON с jQuery и использовал jeditable плагин.Однако после добавления кода я обнаружил, что когда я удаляю ячейку и перезаписываю в нее любое значение, она работает очень хорошо и сохраняет значение в базе данных, но проблема заключается в том, что я не удаляю значение и не добавляю к нему значение.буква или любой текст сохраняет старое значение без нового текста, поэтому я не знаю, в чем проблема.Я приложил оба кода C # и jQuery.
$(document).ready(function() {
var oldValue = '';
var submitdata = {}
submitdata['fast'] = true;
submitdata['pwet'] = 'youpla';
$(".edit").editable("/ShiftTypes/saveuser", {
type: "text",
onedit: function() {
return true;
},
cancel: 'Cancel',
cssclass: 'custom-class',
cancelcssclass: 'btn btn-danger',
submitcssclass: 'btn btn-success',
maxlength: 200,
// select all text
select: true,
label: 'This is a label',
onreset: function() {},
onsubmit: function() {},
showfn: function(elem) {
elem.fadeIn('fast')
},
submit: 'Save',
onsubmit: function(settings, original) {
oldValue = original.revert;
//Swal.fire({
// position: 'top',
// type: 'success',
// title: 'Your work has been saved',
// showConfirmButton: false,
// timer: 1500
//});
},
before: function() {},
callback: function(value, settings) {
var jsonData = $.parseJSON(value);
if (jsonData.status) {
$(this).text(jsonData.value);
} else {
$(this).text(oldValue);
}
},
submitdata: function() {
return {
id: $(this).data('id'),
PropertyName: $(this).data('propertyname')
}
},
/* submitdata as a function example
submitdata : function(revert, settings, submitdata) {
console.log("Revert text: " + revert);
console.log(settings);
console.log("User submitted text: " + submitdata.value);
},
*/
tooltip: "Click to edit...",
width: 160
});
})
Код для C # [ShiftTypesController / saveuser]:
[HttpPost]
public ActionResult saveuser(int id, string propertyName, string value) {
var status = false;
var message = "";
//Update data to database
using(PaediatricDBEntities db = new PaediatricDBEntities()) {
var user = db.ShiftTypes.Find(id);
if (user != null) {
db.Entry(user).Property(propertyName).CurrentValue = value;
db.SaveChanges();
status = true;
} else {
message = "Error!";
}
}
var response = new {
value = value, status = status, message = message
};
JObject o = JObject.FromObject(response);
return Content(o.ToString());
}