sunil gutta Ответов: 2

Объект DataTable встроенного редактирования ? jQuery datatable ?


Привет
Теперь я облажался и должен изменить всю свою функциональность datatable .

Теперь мне нужно, чтобы у меня был редактировать ссылка в виде столбца на каждую строку таблицы данных . когда я нажимаю на кнопку Изменить, столбцы должны превратиться в соответствующие элементы управления, то есть текстовые поля,раскрывающиеся списки .

Это мой код, в котором я ранее занимался редактированием/обновлением ячеек .

КОД:

 $(document).ready(function () {

        var tab = $('#myDataTable').dataTable({
            
                    "oTableTools":
                    {
                        "sSwfPath": "../../Content/copy_cvs_xls_pdf.swf"
                    },
            "bProcessing": true,
            "bServerSide": true,
            "sAjaxSource": 'DataProvider',
            "bJQueryUI": true,
            "sDom": '<"H"TCfr>t<"F"ip>',
            "oTableTools": {
                "aButtons": [
                    {
                        "sExtends": "copy_to_div",
                        "sButtonText": "Copy to div",
                        "sDiv": "copy",
                    }
                ]
            },

            "aoColumns": [
                         {
                             "sName": "ID"
                             , "bVisible" : false
                            
                         },
                         { "sName": "COMPANY_NAME",  "sClass": "hidden-xs" ,
                          "fnRender": function(oObj)
                             {  return '<a href=\"Home/Details/' + oObj.aData[0] + '\">' + oObj.aData[1] + '</a>'; 
                             }
                         },
                         { "sName": "ADDRESS" },
                         { "sName": "TOWN" }   //this will be drop-down assume             ]   
        });
      
//This will be useful no more i guess :( sad 
        tab.makeEditable({
            "aoColumns": [
 
                null,
                null,
                {
                indicator: 'Saving...',
                tooltip: 'Click to select town',
                loadtext: 'loading...',
                type: 'select',
                onblur: 'submit',
                loadurl: 'AjaxDataProvider1'

            }]
        });
    });

</script>


PS: Как только колонка отредактированных данных достигла контроллера, это означает, что я могу делать все . Я пытаюсь с 4-5 часов непрерывно, но до сих пор понятия не имею :(
Просто выше 3 столбцов (текст,текст,выпадающий список) + один столбец ссылки редактирования .. ..

Вот ссылки, которые я пробовал, пожалуйста, один раз посмотрите на это и поделитесь своими идеями :
https://editor.datatables.net/release/DataTables/extras/Editor/examples/inlineControls.html[^]

http://datatables.net/media/blog/inline-editing/complete.html[^]

С уважением

2 Ответов

Рейтинг:
16

Guruprasad.K.Basavaraju

Вы должны реализовать Keytable..

Ниже приведен пример.


https://editor.datatables.net/tutorials/keytable[^]


sunil gutta

приятель мне нужно что то вроде старомодного asp.net data gridview, где мы нажимаем edit, означает , что мы должны получить textbox, dropdown соответственно . Не поп, как функциональность в вышеупомянутой ссылке . Столбцы должны относиться к элементам управления для редактирования

Guruprasad.K.Basavaraju

http://www.jeasyui.com/tutorial/datagrid/datagrid12.php

sunil gutta

ОК элементе управления DataGrid :) но , я пытаюсь изменить только функции редактирования @объект DataTable . использование datatable - мой главный мотив . что бы я ни делал, я должен подчиняться своим требованиям и выполнять их . вы можете понять, что я думаю, что серьезные неприятности я причиняю вам с некоторыми типичными вопросами: (извините, сложные варианты на моем datatable это будет гораздо глубже, когда я углублюсь .

Guruprasad.K.Basavaraju

Вам нужно будет изменить DataTable scripts Sunil, я не уверен, какие методы, но это возможно с некоторым хорошим количеством усилий.

sunil gutta

ладно приятель я продолжу свои усилия и надеюсь :) Спасибо, что уделили мне время . просто если вы наткнулись на что-то подобное, это означает комментарий здесь, и кстати, я видел у вас 3d-коробку, которая очень крутая, и я пришел к выводу, что вы можете быть экспертом по пользовательскому интерфейсу . Вот мой небольшой выпадающий вопрос css : http://www.codeproject.com/Questions/763485/dropdown-list-creative-css -тай . пожалуйста, попробуйте, когда почувствуете себя свободно .

Guruprasad.K.Basavaraju

Вам повезло, похоже, пример уже есть..

http://datatables.net/blog/Inline_editing

sunil gutta

he he no i am not at all : (прежде чем получить мои запросы к вам, я сделал свое глубокое исследование/работу по ссылке, которую вы разместили . я разместил те же ссылки в своем посте внизу, проверьте это .нет выпадающих списков всех текстовых полей .. даже для данного кода я сталкиваюсь со многими проблемами . при нажатии кнопки редактирования ничего не происходит . проверил консоль chrome: некоторые проблемы с амортизацией даже я использую версию adv . отображение данных, но ссылка редактирования не работает

sunil gutta

я попробую еще раз 2mrw утром с лучшими усилиями и дам вам знать . Спасибо. К сожалению, все работает для меня лучше, когда я использую jquery 1.4.js когда я использую 1.9+, я сталкиваюсь со многими проблемами . ха-ха

sunil gutta

Хм, статья при условии, что я пытался весь день, но закончил не с той стороны . Уфф, черт . когда у вас будет время, вы сможете поработать над этим : (может быть полезно вам и полезно мне . Я могу поделиться своим решением через mailid ? ? который имеет весь материал таблицы данных, сделанный до настоящего времени . Если вы можете поделиться своим идентификатором, я могу передать свое решение ,с которым вы можете работать и применять. В любом случае комментируйте :) буду ждать . овации.

Рейтинг:
0

RaunakGupta

это и есть решение.


Смотреть

@{
Видовая сумка.Title = " Индекс";
}

@{
строке кнопку Изменить = "редактировать";

}

Часть 1: реализация jQuery Datatable в ASP.NET MVC


@**@



имя сотрудника
Компания
EditCity
почтовый индекс




тр.даже {
цвет фона: #F5F5F5! важно;
}

@ * Загрузить datatable css *@

@ * Загрузить datatable js *@
@ раздел Скрипты{


$(документ).готово(функция () {
var oTable = $('#myTable'). dataTable({
"Аякс": {
"адрес URL": "/главная/метод loadData",
"тип": "получить",
"тип данных": "json"
},
"колонки": [
{ "данные": "имя", "заказано": правда },
{"данные": "компания", "заказываемый": true },

{
"данные": null,
"заказываемый": ложные,
defaultContent: "@Html. Raw(EditButton)"
}

],
"fnRowCallback": функция (nRow, aoData) {
отладчик;
$(nRow). attr ("data-id", aoData ["EmpId"]);
$(nRow). addClass ("выбирается")
вернуть номер строки;
}
});

$("#applyBtn"). on ("click", функция () {
oTable.fnDraw();
});

$("#myTable tbody").делегат ("tr"," dblclick", функция () {
var ETId = $(this). attr ("data-id");
if (ETId != undefined) {

$(этот).toggleClass ('selected');
ВАР длинк = '@URL-адрес.Действий("управление", "EmailTemplate", новый { идентификатор = "_DATAID_" })';
dLink = dLink. replace ("_DATAID_", ETId);
окно.местоположение = dLink;
}
ещё {
возвращать false;
}
});

});

функция btnEditClientDocumentClick(событие) {

$(событие.цель).ближайший("тр").removeClass("пользовательского интерфейса-некоторые");
var ETId = $(event. target.parentElement.parentElement). attr('data-id');
ВАР длинк = '@URL-адрес.Действий("Управление", "дом", новый { идентификатор = "_DATAID_" })';
dLink = dLink. replace ("_DATAID_", ETId);
окно.местоположение = dLink;
}

}


публичный класс HomeController : Controller
{
//
// добраться до дома/

индекс public ActionResult()
{
возвращение смотреть();
}

// Действие записи для возврата данных базы данных

служащий государственного класса
{
public string Name { get; set; }
общественные управляющие компании { получить; набор; }
empid в общественных идентификатор { получить; набор; }
государственный служащий(строковое имя, строка cmp ,Guid empid)
{
Имя name;
Компания = cmp;
Empid в = empid в;
}

}
public ActionResult loaddata()
{

Emplist список = новый список();
emplist.Добавить (новый сотрудник("Ronak", "xyz", Guid.Метод newguid()));
emplist.Добавить (новый сотрудник ("Ашиш"," xyz1", Guid.Метод newguid()));
emplist.Добавить (новый сотрудник("Vraj", "xyz2", Guid.Метод newguid()));
emplist.Добавить (новый сотрудник("Mukesh", "xyz3", Guid.Метод newguid()));
//сведения ВАР = ДК.Клиентов.Заказатьпо(а => у собой.Контактантами).Список();
var data = emplist.Список();
return Json(new { data = data }, JsonRequestBehavior.AllowGet);

}

}


Richard Deeming

Этот вопрос был задан, дан ответ и решен. 2 ½ года назад.

Ваше "решение" даже не пытается ответить на вопрос.