不要在提交PHP时刷新页面
Do not refresh page on submit PHP
我希望当我点击提交按钮时,它不会刷新页面。我的提交按钮仅在提交时调用代码集。但当它被提交时,它会刷新页面,我的变量就会丢失其值。
我知道这可以用java脚本或ajax实现,但这是我还不知道的地方。需要开始学习。我曾尝试在JavaScript中使用其他一些建议,但对我来说不起作用,因为JavaScript代码是为大多数高级表单构建的,而不仅仅是一个提交按钮。
我的按钮:
<form action='{$_SERVER['PHP_SELF']}' method='post'>
<input type='submit' class='submit' name='confirm_points' value='Confirm Points' />
</form>";
当按下提交按钮时执行的我的代码:
if(isset(&_POST['confirm_points'])) {
// my code is here
}
感谢您的帮助
这里有一个简单的例子:
<?php
if (isset($_POST['points'])) {
echo "I'm AJAX and I have " . $_POST['points'];
exit();
}
?>
<html>
<head>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script>
$(document).ready(function(){
$('form').submit(function(event){
event.preventDefault();
$.ajax({
type: $(this).attr('method'),
data: $('form').serialize(),
success: function(data) {
$('#result').html(data);
}
});
});
});
</script>
</head>
<body>
<form method="POST">
<input type="text" name="points" placeholder="Some data" value="25 points"/>
<input type='submit' class='submit' name='confirm_points' value='Confirm Points' />
</form>
<div id="result"></div>
</body>
</html>
包含应由ajax 提交的表单的页面
<html>
<head></head>
<body>
<form id="my-form">
<input type="text" name="username" /> <br/>
<input type="submit" value="Save" />
</form>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script>
$(function () {
$('#my-form').submit(function (e) {
var $data = $(this).serialize();
var $url = 'path_to_processing_script';
$.post($url, $data, function ($response, $status ) {
if ( $status == 'success' ) {
alert($response);
}
});
e.preventDefault();
});
});
</script>
</body>
</html>
处理脚本
<?php
var_dump($_POST);
?>
首先要停止刷新,请将表单标题更改为:
<form action='{$_SERVER['PHP_SELF']}' method='post' onsubmit="javascript:return false;" id="myform">
接下来,使用ajax提交表单:
<script src="path/to/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#myform").submit(function(){
var elem1=$("#elem1").val(); //get values of inputs for validation
if(elem1.length<5){alert("Length too short!");}//Sample Validation
else{
$.ajax({
url:"verify.php",//link to your submission page
type:"post", //change to your needs
data:{"elem1":elem1}, //add all variable
success:function(response){alert(response);} //Manage Response
});
});
});
</script>
相关文章:
- 可以't使用ajax刷新php表
- 自动刷新 PHP 脚本后端
- 如何使用 AJAX 刷新 PHP 文件
- 从窗口页面响应后刷新 php 页面
- 如何刷新 PHP 页面的特定部分
- 刷新 php 输出而不重新加载页面
- 刷新 php 页面而不重新加载内容
- 使用 AJAX 调用重新加载/刷新 PHP 脚本
- 使用JavaScript刷新PHP函数
- 如何在不重新加载的情况下刷新PHP页面
- Count()函数在页面刷新php后更新
- 刷新PHP sql查询而不刷新页面
- 提交按钮->run.php->弹出->刷新php页面的一部分
- 我正在尝试刷新 PHP 变量
- 如何在提交表单后刷新.php页面
- 如何在不刷新php, SQL和javascript页面上的数据的情况下单击标签提交
- Jquery刷新php和停止函数
- 如何使用javascript代码刷新PHP文件?
- Ajax定时刷新/ PHP / MySQL
- 如何在收到jquery的帖子后刷新PHP页面并显示更改