Ошибка 1: Удалить тег формы. Это будет работать, потому что содержит action = "postrequest. php". Вы делаете 2 вещи одновременно.
- Отправка формы через PHP с использованием тега формы.
- Вы выполняете ajax и отправляете форму.
Ошибка 2: Вы пишете var param1 = $("#param1").val();
Где вы определили param1, param2, param3?
Ошибка 3: Вы даете ссылку jquery, вы не закрыли тег сценария.
Ошибка 4: Вы отправляем data
in ajax и снова выводим ответ ajax с той же переменной
Ошибка 5: Ajax Блок ошибок, который вы создали, неправильный.
<!DOCTYPE html>
<html>
<body>
<input type="text" name="param1" id="param1"/>
<input type="text" name="param2" id="param2"/>
<input type="text" name="param3" id="param3"/>
<input type="button" value='Submit' class="js-ajax-php-json" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(".js-ajax-php-json").click(function() {
var param1 = $("#param1").val();
var param2 = $("#param2").val();
var param3 = $("#param3").val();
$.ajax({
url: 'postrequest.php',
dataType: "html",
type: 'post',
data: {
param1: param1,
param2: param2,
param3: param3
},
success: function(rsp) {
console.log(rsp);
},
error: function(jqXHR, status, err) {
console.log("Error");
},
});
});
});
</script>
</body>
</html>
postrequest. php page
<?php
print_r($_POST);
?>
Я только что переписал ваш код с более простым кодом. Вы можете изменить его согласно вашему требованию.