我代码中出现此问题的部分代码具有以下逻辑:
当用户点击链接X时,一个post请求被发送到XAMPP Web服务器上的一个控制器,以打开来自链接X的view2。此外,所有这些都是在yii框架中添加的,我是这个领域的新手。
HTML视图1:
<a id="article-title1" type="button" onclick="myFunction()">
詹:
function myFunction()
{
alert('allo my function');
dataString = "hallo";
$.ajax({
type:"POST",
url:"http://localhost/basic/web/example/hello",
data:{'dataString':dataString},
success:function (data) {
console.log("send success");
}
});
}
控制器:
public function actionHello() {
$nom = "david";
$prenom = "pascal";
return $this->render('information',[
'name' => $nom,
'prenom' => $prenom
]);
}
php视图2:
<?php
/* @var $this yii\web\View */
use yii\helpers\Html;
$this->title = 'information';
$this->params['breadcrumbs'][] = $this->title;
?>
<div class = "site-information">
<h1><?= Html::encode($this->title) ?></h1>
<p>
This is the information page
</p>
<p>
<b>name:</b><?= $name ?>
</p>
<p>
<b>firstname:</b><?= $firstname ?>
</p>
<code><?= __FILE__ ?></code>
</div>
此外,浏览器中的 AJAX url(http://localhost/basic/web/example/hello)工作正常。但我不知道为什么在收到ajax请求后,浏览器中不显示view2的渲染。
1条答案
按热度按时间ssgvzors1#
当你发送 AJAX 请求的时候,你总是需要返回一些东西到web浏览器,在这种情况下,你需要返回一个在服务器端呈现的html到客户端,并且用js替换旧的html。