jqgrid addRow saveRow beforeSend
У меня есть jqGrid, в который я добавляю новую строку, которую пользователь может редактировать. У них есть кнопка для сохранения нового ряда. Мне нужно добраться до ajax beforeSend, чтобы добавить безопасность в вызов. Это работает в нескольких других сценариях с сеткой, но не в этом. Не уверен что происходит.
Вот как я добавляю новую строку:
jQuery("#myTable").jqGrid('addRow',{
rowID : "new_row",
initdata : {},
position :"first",
useDefValues : false,
useFormatter : false,
addRowParams : {extraparam:{}});
Вот мой код, выполненный моей кнопкой сохранения:
jQuery("#myTable").jqGrid('saveRow',"new_row", {
"url": "{{path('recording_create')}}",
"mtype": "POST",
"succesfunc": function(response) {
return true;
}
});
Я пытался это, но это не уволен. Я думал, что это будет вызвано при сохранении строки:
$.extend($.jgrid.defaults,
{
ajaxRowOptions: {
beforeSend: function () {
alert('Before Row Send'); // not called
}
},
}
);
Я тоже пробовал это, но, я думаю, это вызывается только при редактировании формы?
$.extend($.jgrid.edit, {
ajaxEditOptions: {
beforeSend: function (jqXHR, settings) {
alert('Before Row Send'); // not called
}}});
Какие-нибудь мысли?
Спасибо Скотт
2 ответа
Вы можете попробовать использовать
$.extend($.jgrid.inlineEdit, {
ajaxRowOptions: {
beforeSend: function (jqXHR, settings) {
alert('Before Row Send');
}
}
});
Я надеюсь, что это сработает.
ОБНОВЛЕНО: Извините, но правильный код
$.extend($.jgrid.defaults, {
ajaxRowOptions: {
beforeSend: function () {
alert('Before Row Send');
}
}
});
Вы уже включены в текст вашего вопроса. Он должен работать. Важно только убедиться, что код будет выполнен до создания сетки.
Олег, спасибо за идею. Но это не сработало. Тем не менее, следующее работает:
$.ajaxSetup({
beforeSend: function (jqXHR, settings) {
alert('Before Row Send');
}});
Вопрос для вас, однако, откуда вы знаете, что можно продлить, как вы продлили выше?
Спасибо Скотт