<script>
$.ajax({
url: "http://localhost/app/connexion.php",
type: "POST",
dataType: "json",
/*contentType: 'application/json',
data: '{ email: "[email protected]", password : "00000" }',*/
data: $("#connexionForm").serialize(),
success: function(msg){
if (msg == "1") {
$("#status").text("Login Success..!");
}
},
error: function(jqXHR, textStatus, errorThrown) {
console.info(textStatus + jqXHR.responseText);
}
});
<form action = ""class = "sign-in-form" method = "POST" id = "connexionForm" name = "connexionForm">
<h2 class = "title"> S'indetifier </h2>
<div class = "input-field">
<i class = "fas fa-user"></i>
<input type = "text" placeholder = "Nom Utilisateur" name = "email" id = "email"/>
</div>
<div class = "input-field">
<i class = "fas fa-lock"></i>
<input type = "password" placeholder = "Mote de passe" id = "password" name = "password" />
</div>
<p id = "status"></p>
<input type = "submit" value = "Login" class = "btn solid" id = "loginButton" onclick = "ValidateEmail(document.connexionForm.login)" />
</form>
Я создаю приложение Cordova с помощью простых вызовов REST.
Проблема в том, что когда я создаю AJAX с помощью POST, Chrome отправляет мне: «XMLHttpRequest не может загрузить http: // localhost / app / connexion. Ответ для предварительной проверки имеет недопустимый код состояния HTTP 405» на консоли. и вернуть Cannot POST /index.html Но если я сделаю вызов AJAX с помощью GET (в основном возвращаю значение из базы данных), все работает как шарм.
Я пробую это, но ajax читает данные из формы
Затем попробуйте добавить onsubmit preventDefault к <form>
, например, так: <form action = "" class = "sign-in-form" method = "POST" id = "connexionForm" name = "connexionForm" onsubmit = "event.preventDefault(); return false;">
Вы делаете две просьбы. Один в вашей форме с
<form action = "" method = "POST">
, а другой с AJAX. Избавьтесь от кода <form> и попробуйте снова.