我的网站结构化方法是有很多小视图文件。我的控制器看起来像这个
$this->load->view('templates/header');
$this->load->view('templates/navmenu');
$this->load->view('products/create', $dat);
$this->load->view('templates/footer');
在CodeIgniter-Google-Maps-V3-API-库示例中,控制器传递$data变量一个视图文件
$this->load->library('googlemaps');
$this->googlemaps->initialize();
$data['map'] = $this->googlemaps->create_map();
$this->load->view('my_view', $data);
其中my_view为:
<html>
<head><?php echo $map['js']; ?></head>
<body><?php echo $map['html']; ?></body>
</html>
我一直试图将JS传递到我的头视图,但没有成功。我的控制器现在:
$this->load->view('templates/header, $data');
$this->load->view('templates/navmenu');
$this->load->view('products/create', $data);
$this->load->view('templates/footer');
和头视图文件:
<html>
<head>
<title>CodeIgniter Tutorial</title>
<link rel = "stylesheet" type = "text/css" href = "<?php echo base_url(); ?>css/style.css">
<?php echo $map['js']; ?></head>
<body>
无论我试图做什么(花了几个小时(,当我检查网站时,我发现JS或html部分都不在那里。
我真的很喜欢我有一个打开<body>
标签的header.php视图文件。在一个页面上混合不同的方法是很容易的。
将下面的代码段放在页面的正文中。
<?php echo $map['html']; ?>
<?php echo $map['js']; ?>
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>Welcome to CodeIgniter</title>
<?php echo $map['js'];?>
</head>
<body>
<div id="container">
Welcome to GoogleMAp
<?php echo $map['html'];?>
</div>
</body>
</html>
在您的视图页面中这样做