Невозможно отправлять переменные с помощью jquery post ()

Я пытаюсь передать переменные из модальной формы на другую страницу. Я объявляю переменные из формы с тегами идентификаторов в каждом выборе.

Страница перезагружается до test.php, однако никакая переменная не может быть эхом.

Javascript

var id = $( "#id" ), name = $( "#name" ) $.post("jqtest/test.php", { device_id: "id", device_name: "name" }); load('jqtest/test.php'); 

test.php

 echo $_POST['device_name']; echo $_POST['device_id']; 

Related of "Невозможно отправлять переменные с помощью jquery post ()"

Неясно, как вы планируете использовать этот код для передачи значений из вашей модальной формы, но есть несколько проблем с вашим текущим кодом:

  1. ; отсутствует в конце присвоения переменной
  2. читать значения из полей ввода, используя val() вместо получения объектов jquery из них
  3. использовать имена переменных в объекте данных метода post вместо литералов («id», «name»)

Попробуйте это, чтобы увидеть, что переменные передаются и повторяются в функции обратного вызова

 var id = $( "#id" ).val(), name = $( "#name" ).val(); $.post("jqtest/test.php", { device_id: id, device_name: name }, function(data){ alert(data); } ); 

Похоже, в этом много чего … Похоже, вы используете echo $_POST['device_name']; и echo $_POST['device_id']; просто чтобы убедиться, что ваш AJAX работает. Если это так, вам не нужно использовать .load(); , Вы также отправляете объект jQuery из $( "#id" ) и $( "#name" ) вместо значений в этих элементах формы. Позже в вашем запросе .post у вас есть те же самые переменные в кавычках, которые отправляют строки «id» и «name». Опять же – скорее всего, не то, что вы ищете.

Ваш вопрос немного запутан, но я сделаю все возможное, чтобы ответить. Попробуйте это JS:

 var id = $("#id").val(), name = $("#name").val(); $.post("jqtest/test.php", { device_id: id, device_name: name }, function(response) { console.log(response); }); 

В вашем файле PHP используйте этот код:

 echo $_POST['device_name']; echo $_POST['device_id']; 

Вы увидите, что ваши переменные отображаются в консоли JS вашего браузера. С помощью этого сценария вы отправили свои две переменные в test.php через POST, а test.php отобразит результаты. Функция обратного вызова, добавленная в запрос $ .post, отобразит вывод test.php в консоли javascript. Подробнее о .$post() в документах jQuery.