Можно ли перезаписать все сообщения об ошибках в DataTables собственными?Javascript

Форум по Javascript
Ответить
Anonymous
 Можно ли перезаписать все сообщения об ошибках в DataTables собственными?

Сообщение Anonymous »

Я использую DataTables в своем проекте и хочу переопределить все сообщения обратной связи по умолчанию, например те, которые отображаются, когда записи не найдены или при загрузке данных, одним настраиваемым сообщением (например, «Произошла ошибка, попробуйте снова.").
Я понимаю, что такие параметры, как язык, позволяют мне переопределить определенные сообщения, такие как ZeroRecords, infoEmpty или loadingRecords. Однако я бы хотел избежать ручной настройки каждого отдельного сообщения. Есть ли способ универсально применить одно пользовательское сообщение ко всем этим сценариям без необходимости определять их по отдельности?

Код: Выделить всё

    $(document).ready(function() {
let table = new DataTable('#orders-table', {
dom: 'rtp',
paging: true,
searching: true,
ordering: true,
pageLength: 10,
processing: true,
serverSide: true,
autoWidth: false,
scrollX: false,
scrollCollapse: true,
order: [[0, 'desc']],
ajax: {
url: "{{ $url }}",
data: function(d) {
d.van = $('#van').val();
d.tot = $('#tot').val();
d.resellerKlant = $('#resellerKlant').val();
d.cursus = $('#cursus').val();
@if(auth()->user()->isBeheerder())
d.reseller = $('#reseller').val();
@endif
},

},
columns: [
{
data: 'id',
title: 'Ordernummer',
render: function(data, type, row) {
var formattedNumber = data.toString();
if (formattedNumber.length <  6) {
formattedNumber = ('000000' + formattedNumber).slice(-6);
}
return '#' + formattedNumber;
}
},
@if(auth()->user()->isBeheerder())
{
data: 'reseller_naam',
title: 'Reseller',
},
@endif
{
// data: 'cursus_naam',
title: 'Cursussoort',
render: function(data, type, row) {
return data;
}
},
{
data: 'cursist',
title: 'Cursist',
render: DataTable.render.text(),
width: '250px'
},
{
data: 'resellerklant',
title: 'Organisatie',
render: DataTable.render.text()
},
{
data: 'created_at',
title: 'Aanschaf',
render: function(data) {
return new Date(data).toLocaleDateString();
}
},
{
data: 'created_at',
title: 'Geldig tot',
render: function(data) {
let date = new Date(data);
date.setFullYear(date.getFullYear() + 1);
return date.toLocaleDateString();
}
},
{
data: 'prijs',
title: 'Inkoopprijs',
render: function(data, type, row) {
return new Intl.NumberFormat('nl-NL', { style: 'currency',          currency: 'EUR' }).format(data);
}
},
],
language: {
search: "",
"zeroRecords": "Geen orders gevonden",
"infoEmpty": "Geen orders gevonden",
"emptyTable": "Geen orders gevonden"
}
});

$('#zoekenNaarCursisten').on('input', function() {
var value = $(this).val();
table.search(value).draw();
});
$('#van, #tot, #resellerKlant, #cursus').on('change', function() {
table.ajax.reload();
});

@if(auth()->user()->isBeheerder())
$('#reseller').on('change', function() {
table.ajax.reload();
});
@endif

new TomSelect("#resellerKlant", {
plugins: ['remove_button'],
create: false,
sortField: {
field: "text",
direction: "asc"
},
render: {
no_results: function(data, escape) {
return 'Geen resultaat voor "' + escape(data.input) + '"';
}
}
});

@if(auth()->user()->isBeheerder())
new TomSelect("#reseller", {
plugins: ['remove_button'],
create: false,
sortField: {
field: "text",
direction: "asc"
},
render: {
no_results: function(data, escape) {
return 'Geen resultaat voor "' + escape(data.input) + '"';
}
}
});

$.ajax({
url: "{{ $url }}",
method: 'GET',
data: { action: 'get_cursussen' },
success:  function(response) {
if(response.cursussen) {
var cursusSelect = $('#cursus');
cursusSelect.find('option:not(:first)').remove();
$.each(response.cursussen, function(index, cursus) {
cursusSelect.append(
$('').val(cursus.id).text(cursus.text)
);
});
new TomSelect("#cursus", {
plugins: ['remove_button'],
create: false,
sortField: {
field: "text",
direction: "asc"
},
render: {
no_results: function(data, escape) {
return 'Geen resultaat voor "' + escape(data.input) + '"';
}
}
});
}
},
error: function(xhr, status, error) {
console.error('Error fetching cursussoort:', error);
}
});
@else
var cursussen = @json($cursussen);
var cursusSelect = $('#cursus');
$.each(cursussen, function(index, cursus) {
cursusSelect.append(
$('').val(cursus.id).text(cursus.naam)
);
if(cursus.heeft_herhalingstraining){
cursusSelect.append(
$('').val('h_' + cursus.id).text(cursus.naam_herhaling)
);
}
});
new TomSelect("#cursus", {
plugins: ['remove_button'],
create: false,
sortField: {
field: "text",
direction: "asc"
},
render: {
no_results: function(data, escape) {
return 'Geen resultaat voor "' + escape(data.input) + '"';
}
}
});
@endif
});


@endsection
Я надеялся, что эта единая конфигурация будет универсально применять сообщение во всех случаях ошибок.

Подробнее здесь: https://stackoverflow.com/questions/793 ... custom-one
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»