Php 提交表单时如何防止页面重新加载?
当我提交HTML表单时,我希望PHP获取输入的值,但每当我提交HTML表单时,它都会重新加载页面。如何预防这种情况?? 提前谢谢 我的密码-Php 提交表单时如何防止页面重新加载?,php,html,Php,Html,当我提交HTML表单时,我希望PHP获取输入的值,但每当我提交HTML表单时,它都会重新加载页面。如何预防这种情况?? 提前谢谢 我的密码- <!DOCTYPE html> <html> <body> <form method="post"> <input type="number" type="button" min="0" id="Q1" name="Q1"><br> <input type="nu
<!DOCTYPE html>
<html>
<body>
<form method="post">
<input type="number" type="button" min="0" id="Q1" name="Q1"><br>
<input type="number" type="button" min="0" id="Q2" name="Q2"><br>
<input type="number" type="button" min="0" id="Q3" name="Q3">
<input type="submit" type="button" id="submit2" name="submit2">
</form>
<?php
if(isset($_POST['submit2'])){
$input1 = $_POST['Q1'];
$input2 = $_POST['Q2'];
$input3 = $_POST['Q3'];
echo $input1;
}
?>
</body>
</html>
在javascript中,您可以执行e.preventDefault()
bye
是事件
希望这对您需要ajax有所帮助
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
$('form').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'post',
url: 'post.php',
data: $('form').serialize(),
success: function () {
alert('form was submitted');
}
});
});
});
</script>
</head>
<body>
<form>
<input name="time" value="00:00:00.00"><br>
<input name="date" value="0000-00-00"><br>
<input name="submit" type="submit" value="Submit">
</form>
</body>
</html>
$(函数(){
$('form')。关于('submit',函数(e){
e、 预防默认值();
$.ajax({
键入:“post”,
url:'post.php',
数据:$('form')。序列化(),
成功:函数(){
警报(“表格已提交”);
}
});
});
});
post.php
<?php
print_r($_POST);
if ($_POST['date']) {
$date = $_POST['date'];
$time = $_POST['time'];
echo '<h1>' . $date . '---' . $time . '</h1>';
}
else {
}
?>
您应该尝试使用AJAX。使用Ajax,web应用程序可以从服务器异步发送和检索数据,而不会干扰现有页面的显示和行为 页面的确切代码如下所示:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
$('form').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'post',
url: 'post.php',
data: $('form').serialize(),
success: function () {
alert('form was submitted');
}
});
});
});
</script>
</head>
<body>
<form method="post">
<input type="number" type="button" min="0" id="Q1" name="Q1"><br>
<input type="number" type="button" min="0" id="Q2" name="Q2"><br>
<input type="number" type="button" min="0" id="Q3" name="Q3">
<input type="submit" type="button" id="submit2" name="submit2">
</form>
$(函数(){
$('form')。关于('submit',函数(e){
e、 预防默认值();
$.ajax({
键入:“post”,
url:'post.php',
数据:$('form')。序列化(),
成功:函数(){
警报(“表格已提交”);
}
});
});
});
PHP:post.PHP
<?php
if(isset($_POST['submit2'])){
$input1 = $_POST['Q1'];
$input2 = $_POST['Q2'];
$input3 = $_POST['Q3'];
echo $input1;
}
?>
</body>
</html>
为什么在输入中输入多个类型
?您看过AJAX吗?这可以用来调用另一个.php文件,并提交表单数据,而无需任何页面刷新。重新加载是什么意思?如果您将表单提交到其他页面,它将不会“重新加载”。表单将不会被提交。我想您可以在后台使用AJAXYes通过javascript调用POST
事件,您可以这样做,但这不在您的答案中:)这不是一个真正的答案,因为它最终无法解决OP的问题。您可以将表单中的数据发送到php文件,然后动态更新页面中的元素。我实际上是在输入完全相同的代码。这是正确的answer@LemuelBotha这是“一个”答案。我同意,在真正阅读了他的答案后,我发现他实际上只是从另一个问题的答案中复制了它,没有进行编辑以适应这个问题question@LemuelBotha如果我的PHP代码以ajax代码的形式存在于文件中,那么我应该怎么做呢?您只需要将PHP创建为一个外部页面