gpt4 book ai didi

javascript - 使用 ajax 的表单 - 消息表单 php,无需刷新页面

转载 作者:行者123 更新时间:2023-12-01 01:54:41 26 4
gpt4 key购买 nike

我想使用 ajax 调用发送表单而不刷新页面

HTML

<form id="form">
<input type="radio" name="radio" value="radio1">
<input type="radio" name="radio" value="radio1">

<input type="checkbox" name="box" value="box1">
<input type="checkbox" name="box" value="box2">

<input type="text" name="text" value="box2">

<input type="submit" id="submit" name="submit" class="embtn btn-1" value="Send" onclick="submitform()">

</form>

这是JS代码

function submitform(e) {
e.preventDefault();
$.ajax({
url : 'assets/php/brief-wiz.php',
type: 'post',
data: $('form').serialize()
}).done(function(html) {
$( ".form-message" ).append( html );
});
};

PHP

<?php

$errors = [];

if (empty($_POST["radio"])) {
$errors[] = "Complete radio ";
} else {
$radio = implode($_POST['radio']);
}

if (empty($_POST["box"])) {
$errors[] = "Complete box ";
} else {
$box = implode($_POST['box']);
}

$text = ($_POST['text']);

$body = "";

$body .= "<div><b>1:</b> " . $profil . "</div>";
$body .= "<div><b>2:</b> " . $box . $text . "</div>";

$to = 'mymail@com.pl';
$subject = 'Contact;
$message = $body;

$headers = "From: webmaster@example.com" . "\r\n";
$headers .= "Reply-To: " . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";

$success = mail($to, $subject, $message, $headers);


echo $success ? "Mail sended" : "Error";


?>

现在我的页面正在重新加载,没有任何消息。

没有此代码:

(e) {
e.preventDefault();
}

消息显示一秒钟,但页面正在重新加载。如何使用 PHP 加载消息而不刷新页面。

最佳答案

使用 Javascript 事件:

HTML

<form id="form" action="assets/php/brief-wiz.php">
<input type="radio" name="radio" value="radio1">
<input type="radio" name="radio" value="radio1">

<input type="checkbox" name="box" value="box1">
<input type="checkbox" name="box" value="box2">

<input type="text" name="text" value="box2">

<input type="submit" id="submit" name="submit" class="embtn btn-1" value="Send">
</form>

JAVASCRIPT

$('form').on('submit',function(event){
event.preventDefault();
var form = event.currentTarget;
$.ajax(
{
url : $(form).attr('action'),
type: 'post',
data: $(form).serialize()
}
).done(
function(html) {
$( ".form-message" ).append( html );
}
);
});

关于javascript - 使用 ajax 的表单 - 消息表单 php,无需刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51135532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com