Я хотел бы отправить с помощью POST значение поля "поиск" datatable, чтобы использовать его для инициализации другой страницы, это возможно? я пытаюсь таким образом
$(document).ready(function() {
var table = $('#elencoprodotti').DataTable( {
"language": {
"url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Italian.json",
"decimal": ",",
"thousands": "."
},
"ajax": {
"url": modulo+"_get_elenco.php?tabella = ",
"dataSrc": ""
},
"columns": [
{ "data": "IMG" },
{ "data": "CODICE" },
{ "data": "CODICE_OBSOLETO" },
{ "data": "DESCRIZIONE" },
{ "data": "CATEGORIA" },
{ "data": "FORNITORE" },
{ "data": "UM_BREVE" },
{ "data": "QTA_NEW" },
{ "data": "SCORTA_MINIMA" }
],
"columnDefs": [
{
"targets": [0],
"searchable": false, // disabilita la ricereca per il campo con indice 0
"orderable": false // disabilita l'ordinamento4
},
это был мой код, и я добавил эту функцию при изменении, и я установил значение фильтра в переменной, но теперь я не могу отправить его по почте
$('#elencoprodotti').on('change', function() {
var value = $('.dataTables_filter input').val();
//alert(value); // <-- the value
$.ajax({
type:"POST",
method:"POST",
url: "ciao.php",
data:{ 'value': value},
success: function(){
alert(value);
}
});
и ciao.php просто
$name = $_POST['value'];
echo $name;
Так что же сейчас происходит?
@RiggsFolly, теперь у меня ошибка: "Неопределенный индекс: значение"
@hungrykoala, я просто уловил значение, которое моя проблема - отправить его с помощью POST
так alert(value); работает правильно?






Ты можешь сделать это:
$('.dataTables_filter input').on('blur', function() {
var search_value = $('.dataTables_filter input').val();
$.ajax({
method:"POST",
url: "ciao.php",
data:{ "value":search_value},
success: function(data){
alert(data);
}
});
Удалять type:"POST", не нужно. Вам также необходимо добавить параметр в функцию успеха, иначе вы не сможете получить результат.
Кроме того, переменные должны быть конкретными, поэтому я заменил value на search_value.
извините, я плохо выразился, также предупреждение не работает, на мой взгляд, это все $ .ajax ({это неправильно, но я не знаю, как ... потому что с var search_value = $ ('. dataTables_filter input'). val (); я улавливаю значение и могу правильно добавить его к URL-адресу, а затем получить его в GET, но я не хочу, чтобы мой поиск был виден в URL-адресе
@ Jordan.M Я обновил его, чтобы смотреть .dataTables_filter input и использовать blur для проверки изменений. Поскольку вы упомянули, что вы можете получить данные с помощью $('.dataTables_filter input').val()
@ Jordan.M То, что я имел в виду под предупреждением, - это первое предупреждение сразу после $('.dataTables_filter input').val().
Вместо этого привяжите событие к поисковому вводу, чтобы задача работала.
Попробуй это:
$('.dataTables_filter input').on('change keyup paste', function() {
var value = $(this).val();
alert(value); // <-- the value
$.ajax({
type: "POST",
url: "ciao.php",
data: {
'value': value
},
success: function() {
alert(value);
}
});
});
В ciao.php - вы можете сохранить переданное значение в переменной сеанса, чтобы снова использовать его на другой странице.
спасибо за ответ, но он не работает, значение также не установлено в POST
Убедитесь, что мой код находится ниже блока $('#elencoprodotti').DataTable(.....);, чтобы он работал.
вы можете попытаться поймать значение поля поиска по данным, используя onblur