我尝试使用ajax将变量从一个页面传递到下一个页面。 我已经运行了传递,但我不知道如何用这个变量打开页面。
我的实际代码:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title>Ajax</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">
<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" integrity="sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r" crossorigin="anonymous">
<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
<!-- <script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>-->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<button id="test" class="btn btn-lg btn-primary">Test</button>
<script>
$(document).ready(function () {
$("#test").click(function () {
var variable = 'AAAaaa';
//alert($(this).attr('id'));
$.ajax({
type: "POST",
url: 'view.php',
data: {"temp": variable},
success: function (data) {
alert("success!");
}
});
});
});
</script>
</body>
</html>
第二页我想看$ _Post表中的内容
<?php
$table = $_POST;
?>
<pre>
<?= print_r($table);?>
</pre>
编辑评论:
不是问题。你可以在ajax中创建一个回调函数 成功的事件。成功时,从view.php中获取该数据并将其发送给 另一个ajax调用的第二页。一切都会完成 异步并完成你所要求的。 - putipong
我在视图中有数组。例如:
$array = array(
"foo" => "bar",
"bar" => "foo",
);
当我按下按钮时,如何通过post和ajax将此数组发送到控制器功能并打开此操作。 我尝试过,但不起作用
public function actionUuuu()
{
$request = Yii::$app->request;
$array = $request->post();
print_r($array)
答案 0 :(得分:3)
在 view.php 中,您可以将表数据分配到$_SESSION
,然后在第二页中稍后检索,只需使用 session_start(); 强>
必须在每个需要使用会话数据的页面上启动会话,否则它将无效。
的 view.php:强>
session_start();
if ($_POST['temp'] == 'AAAaaa') {
$_SESSION['tableData'] = $tableData;
echo true;
} else {
echo false;
}
return;
的使用Javascript:强>
$(document).ready(function () {
$("#test").click(function () {
var variable = 'AAAaaa';
//alert($(this).attr('id'));
$.ajax({
type: "POST",
url: 'view.php',
data: {"temp": variable},
success: function (data) {
if (data == 'true') {
window.location.replace('secondPage.php');
}
}
});
});
});
的 secondPage.php 强>
session_start();
$table = $_SESSION['tableData'];