如何在Opencart中使用Ajax
How using Ajax In Opencart?
我在ajax
的经验很少,所以我只是尽力而为。
我使用Opencart
版本1.5.5.1
我尝试为结果数据构建ajax
例如(select title,description,date from menu where menu_id ='1') or (select *)
.
就我而言,我使用 combobox
作为触发器ajax
,所以我在 combobox
中使用 Onchange
然后将变量传递给 Controller
.
阿贾克斯 :
<script type="text/javascript" src="view/javascript/jquery/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#id_menu').change(function() {
if ($(this).val != 0) {
var menu_id = $(this).val(); // store to variable for passing
$.ajax({
url: 'index.php?route=menu/all_menu/function_menu',
type: 'POST',
dataType: 'html',
data: {
menu_id: menu_id
},
success: function(response) {
$("#all-menu").html(response);
}
});
}
}).change();
});
</script>
视图:
<?php echo $header; ?>
<div id="content">
<div class="breadcrumb">
<?php foreach ($breadcrumbs as $breadcrumb){?>
<?php echo $breadcrumb['separator']; ?><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a>
<?php } ?>
</div>
<?php if ($error_warning) {?>
<div class="warning"><?php echo $error_warning; ?></div>
<?php } ?>
<?php if ($success) {?>
<div class="success"><?php echo $success; ?></div>
<?php } ?>
<div class="box">
<div class="heading">
<h1><img src="view/image/product.png" alt="" /> <?php echo $heading_title; ?></h1>
</div>
<div class="content">
<form action="<?php echo $action; ?>" method="POST" enctype="multipart/form-data" id="form">
<table class="form">
<tr>
<td><?php echo $entry_menu; ?></td>
<td>
<select name="id_menu" id="id_menu">
<option value="" selected='selected'> Menu </option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select>
<?php if ($error['menu'])?>
<span class="error"><?php echo $error['menu']; ?></span>
</td>
</tr>
</table>
<div id="all-menu" align="center">
</div>
</form>
</div>
</div>
</div>
控制器:
(class ControllerMenuAllMenu extends Controller {)
public function function_menu(){
$this->language->load('menu/all_menu');
$this->load->model('menu/all_menu');
echo "A";exit; //Should be result A
}
当我更改组合框时,它会再次显示我的主页(后端),div all-menu
像这样 http://s1064.photobucket.com/user/blackarch01/media/Untitled_zpsbkmv1vlk.jpg.html?sort=3&o=0
如果要调用管理页面,则需要在 ajax url 中包含会话令牌:
url: 'index.php?route=menu/all_menu/function_menu&token=<?php echo $this->session->data["token"]; ?>',
相关文章:
- 无法在通过jQuery的ajax加载的页面中执行javascript
- 如何通过ajax刷新JSF填充的javascript变量
- 如何在php文件中获取$.post-ajax传递的值
- Replacing $ .ajax?
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- Ajax发布表单序列化,发布引号'
- 通过Ajax将JavaScript函数传递给PHP文件
- ajax请求的顺序总是不同的
- 可以't使用Polymer's的核心ajax
- Ajax Live搜索发布到Laravel视图
- Ajax聊天消息重复而不仅仅是更新
- 从控制器返回后Ajax启动事件激发
- PHP AJAX图片上传示例不上传
- 从ajax请求中获取javascript对象
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 如何在Javascript中解析AJAX数组的特定部分
- Ajax文件加载和<输入>文件加载
- Javascript/jQuery中的并行Ajax调用
- 如何在Opencart中使用Ajax
- Opencart Ajax过滤器用于产品