Php Smarty未显示模板
我正在尝试为我的网站建立一个菜单,并使用Smarty显示页面。当用户单击注销选项时,JQuery会向index.php脚本发送一个Ajax调用,该脚本包含Smarty显示页面的代码,但它不会显示该页面。在我添加菜单之前,它工作得很好。firebug中也没有错误。有人能给我指出正确的方向吗 下面是PHP代码Php Smarty未显示模板,php,jquery,html,smarty,Php,Jquery,Html,Smarty,我正在尝试为我的网站建立一个菜单,并使用Smarty显示页面。当用户单击注销选项时,JQuery会向index.php脚本发送一个Ajax调用,该脚本包含Smarty显示页面的代码,但它不会显示该页面。在我添加菜单之前,它工作得很好。firebug中也没有错误。有人能给我指出正确的方向吗 下面是PHP代码 if (isset($_POST['menu_index'])) { if ($_POST['menu_index'] == 'Logout')
if (isset($_POST['menu_index']))
{
if ($_POST['menu_index'] == 'Logout')
{
$smarty->display("login.tpl");
exit;
}
}
这是JQuery代码
$('ul li a').on('click', function() {
var menuItemIndex = $(this).data('val');
console.log(menuItemIndex);
$.ajax({
url: 'index.php',
type: 'POST',
data: {
'menu_index': menuItemIndex
},
dataType: 'json',
success: function(response) {
alert('success');
},
error: function(errorMsg) {
alert('failed');
}
});
});
下面是HTML代码
<form name="mainmenu" id="mainmenu">
<div id='content'>
<div id='jqxMenu'>
<ul>
<li>Maintanence
<ul style='width: 180px;'>
<li><a href="#" data-val="addCategory">Add Category</a></li>
<li><a href="#" data-val="addSubCategory">Add Sub-category</a></li>
</ul>
</li>
<li>Process Order
<ul style='width: 180px;'>
<li><a href="#" data-val="addShipOrder">Ship Order</a></li>
<li><a href="#" data-val="addChangeOrder">Change Order Status</a></li>
</ul>
</li>
<li>Reports
<ul style='width: 180x;'>
<li><a href="#" data-val="addOrderStation">Orders by station</a></li>
<li><a href="#" data-val="addOrderDate">Orders by date</a></li>
<li><a href="#" data-val="addPendingOrder">Pending Orders</a></li>
</ul>
</li>
<li><a href="#" data-val="Logout">Logout</a></li>
</ul>
</div>
</div>
</form>
- 维护
- 处理顺序
- 报告
您好,我想您不明白Smarty是如何工作的,但我可以告诉您,您没有html代码中的任何模板,这对此类编程非常重要
您需要为菜单创建模板,并将其命名为menu.tpl->然后将其包含在index.tpl
有关更多信息,请查看www.smarty.netAJAX请求的
数据类型是json
。除非您将success
中的alert
替换为登录页面的重定向代码,否则它将永远不会显示页面。感谢您的回复。我不熟悉这种编程。如何从PHP发送成功响应并在JQuery中重定向它