#jquery #datatables
#jquery #таблицы данных
Вопрос:
Привет, у меня есть приведенный ниже код для редактора в таблицах данных
var editorDataTableModule = (function()
{
return {
editorInitializer : function()
{
editor = new jQ.fn.dataTable.Editor(
{
"ajax": items,
"table": "#example",
"fields": [ {
"label": "Name",
"name": "name"
}, {
"label": "Start Range",
"name": "startRange"
}, {
"label": "End Range:",
"name": "endRange"
}, {
"label": "Old Risk Grade:",
"name": "oldRiskGrade"
}, {
"label": "Reporting Risk Grade:",
"name": "reportingRiskGrade"
}]
});
}
}
})();
table = jQ('#example').DataTable({
retrieve : true,
bFilter : false,
"bProcessing" : true,
"data" : items,
"columns" : [ {
"data" : "name"
}, {
"data" : "startRange"
}, {
"data" : "endRange"
}, {
"data" : "oldRiskGrade"
}, {
"data" : "reportingRiskGrade"
},{
"data" : "approvalType"
}, {
data: "null",
className: "center",
render: function(data,type,row)
{
return '<a href="" class="editor_edit">Edit</a>/
<a class="editor_remove" href="">Delete</a>';
}
}],
});
// Edit record
jQ('#example').on('click', 'a.editor_edit', function (e)
{
e.preventDefault();
editor.edit( jQ(this).closest('tr'),
{
title: 'Edit record',
buttons: 'Update'
} );
});
Теперь, когда я нажимаю кнопку редактирования, открывается модальный файл с кнопкой обновления, теперь я хочу вызвать другую функцию по нажатию кнопки обновления. Поскольку эта кнопка не имеет идентификатора и создается динамически с помощью некоторого внутреннего javascript таблиц данных, каков наилучший способ достижения этой функциональности?? Любая помощь будет оценена.
Спасибо
Комментарии:
1. Краткое руководство: внимательно посмотрите на HTML-код модального — почти наверняка будет уникальный селектор, который вы можете создать, который выбирает кнопку обновления.
2. Можете ли вы включить идентификатор из исходных данных datatables и использовать его в качестве идентификатора кнопки?
3. Я прикрепил изображение фрагмента элемента проверки, и он не показывает идентификатор??
Ответ №1:
У вас есть несколько вариантов… класс, атрибут.. возможно, название, как я вижу в вашем коде. Попробуй это:
$(document).on('click','button[title="Edit record"]', function() {
// your functions
});
Комментарии:
1. но как вы можете сказать, что заголовок — это запись редактирования??
2. Это в вашем коде … на 5-й последней строке. заголовок: «Редактировать запись», я не уверен, говорим ли мы об одной и той же кнопке. Не могли бы вы поделиться с нами модальной разметкой, чтобы лучше помочь вам?
3. Нет, это заголовок для всего модального. Это не связано с кнопкой. Проблема в том, что при нажатии кнопки редактирования я получаю модальный файл с кнопкой обновления. Я использую таблицы данных и хочу вызвать другую функцию при нажатии этой кнопки обновления.
4. Я понимаю. можете ли вы показать мне разметку? Должно быть что-то, что делает эту кнопку уникальной. есть ли в вашем модальном идентификаторе какой-либо идентификатор, который является родительской кнопкой? Что-нибудь? Пожалуйста, поделитесь с нами своим модальным кодом. (перейдите к своему модальному элементу, щелкните правой кнопкой мыши -> проверить элемент и скопируйте html, который создает ваш модальный)
5. Спасибо всем за вашу поддержку и предложения. Я нашел решение. В кнопках в таблицах данных есть синтаксис, подобный кнопкам : ({})