我有一些AJAX
代码,但它没有得到服务器的响应。我尝试了很多东西,但无法弄清楚为什么这不起作用。我正在使用localhost
进行XAMPP
设置。我希望echo
能够在span
中看到ID状态。
关于index.php的AJAX
$(document).ready(function() {
$("#registrationform").submit(function() {
$.ajax({
type: "POST",
url: "registration.php",
data: $("#registrationform").serialize(),
success: function(data) {
$("#status").html(data);
}
});
alert("Ajax not running")
});
});
index.php上的FORM
<form id="registrationform" action="">
Voornaam: <input type="text" name="voornaam" /><br />
Tussenvoegsel: <input type="text" name="tussenvoegsel" /><br />
Achternaam: <input type="text" name="achternaam" /><br />
Geslacht: <?php include_once("parser/geslacht.php"); ?><br />
Land: <?php include_once("parser/land.php"); ?><br />
Geboortedatum: <?php include_once("parser/gebdatum.php"); ?><br />
E-mail: <input type="text" name="e-mail" /><br />
Wachtwoord: <input type="password" name="password" /><br />
Hertype wachtwoord: <input type="password" name="password2" /><br /><br />
De onderstaande vraag is nodig om uw wachtwoord terug te halen mocht u die vergeten zijn.<br />
Geheime vraag: <select name="geheimevraag" id="geheimevraag">
<option value="huisdier">Wat is de naam van jouw eerste huisdier?</option>
<option value="moedername">Wat is de meisjesnaam van je moeder?</option>
<option value="eerstebaas">Hoe heet je eerste baas?</option>
<option value="eigenvraag">Eigen vraag opstellen</option>
</select><br/>
<span id="anders" style="display:none;">Eigen vraag: <input type="text" name="eigen_vraag" style="width:300px;"/></span><br />
Antwoord: <input type="password" name="gantwoord" /><br />
</form>
<input type="submit" value="Submit"/>
<span id="status"></span>
为registration.php
if(!empty($_POST)){
echo "There is a value";
}else{
echo "enter a value";
}
?>
答案 0 :(得分:1)
请尝试此代码
$(document).ready(function() {
$("#registrationform").submit(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "registration.php",
data: $("#registrationform").serialize(),
success: function(data) {
$("#status").html(data);
}
});
alert("Ajax not running")
});
});
答案 1 :(得分:1)
您必须阻止提交按钮的默认行为
$("#registrationform").submit(function(ev) {
ev.preventDefault();
...
然后你需要实现一个合适的故障处理程序,你当前的故障处理程序将始终提醒,因为ajax是异步的
$.ajax({
type: "POST",
url: "registration.php",
data: $("#registrationform").serialize(),
success: function(data) {
console.log(data); // check your console to see if request is success and what it contains
$("#status").html(data);
}
}).fail(function () {
alert("oh noes");
});
答案 2 :(得分:1)
在<input type="submit" value="Submit"/>
关闭代码
</form>
<form id="registrationform" action="">
Voornaam: <input type="text" name="voornaam" /><br />
Tussenvoegsel: <input type="text" name="tussenvoegsel" /><br />
Achternaam: <input type="text" name="achternaam" /><br />
Geslacht: <?php //include_once("parser/geslacht.php"); ?><br />
Land: <?php //include_once("parser/land.php"); ?><br />
Geboortedatum: <?php //include_once("parser/gebdatum.php"); ?><br />
E-mail: <input type="text" name="e-mail" /><br />
Wachtwoord: <input type="password" name="password" /><br />
Hertype wachtwoord: <input type="password" name="password2" /><br /><br />
De onderstaande vraag is nodig om uw wachtwoord terug te halen mocht u die vergeten zijn.<br />
Geheime vraag: <select name="geheimevraag" id="geheimevraag">
<option value="huisdier">Wat is de naam van jouw eerste huisdier?</option>
<option value="moedername">Wat is de meisjesnaam van je moeder?</option>
<option value="eerstebaas">Hoe heet je eerste baas?</option>
<option value="eigenvraag">Eigen vraag opstellen</option>
</select><br/>
<span id="anders" style="display:none;">Eigen vraag: <input type="text" name="eigen_vraag" style="width:300px;"/></span><br />
Antwoord: <input type="password" name="gantwoord" /><br />
<input type="submit" value="Submit"/>
</form>
<span id="status"></span>
您的jquery脚本脚本:
<script>
$(document).ready(function() {
$("#registrationform").submit(function(ev){
ev.preventDefault();
$.ajax ({
type: "POST",
url: "registration.php",
data: $("#registrationform").serialize(),
success: function(data) {
$("#status").html(data);
}
});
alert("Ajax not running")
});
});
</script>
答案 3 :(得分:0)
您需要阻止表单的默认行为,以便页面不会更改位置,以便JS可以执行AJAX请求。
$("#registrationform").submit(function(e) {
e.preventDefault(); //this one
$.ajax({
type: "POST",
url: "registration.php",
data: $("#registrationform").serialize(),
success: function(data) {
$("#status").html(data);
}
});
});