【发布时间】:2010-11-07 18:17:49
【问题描述】:
我有点进退两难。我正在编写一个程序,用户可以在其中进行搜索。然后搜索返回一个可能的结果列表。如果您将鼠标移到结果上,它会突出显示它们。当您从结果中选择一项时,它会将列表替换为您选择的项目。我遇到的问题是我无法获得替换列表的项目。我正在使用 CodeIgniter。
步骤
在我的模型中,我通过 onclick 函数将项目的 id (VenueID) 传递给我的 javascript 函数。
venue_model.php:
$output .= '<li><a href="#self" class="menulink" class=&{ns4class};
onClick="changeDiv(\''.
$venue_details->**VenueID**.
'\')">
javascript 函数获取 javascript id,然后将其传递给控制器中的函数以从 MySQL 数据库中检索项目。
divUpdater.php:
<script type="text/javascript">
base_url = '<?= base_url();?>index.php/';
</script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript">
function changeDiv(venueID){
$.get(base_url+'home/get_venue_description/' + venueID , function(data) {
$('#venue_description').html(data);
document.getElementById('venue_description').innerHTML=data;
});
}
这是控制器中从数据库中检索数据的函数
home.php(控制器)
function get_venue_description($venueID){
echo $this->venue_model->retrieveData($venueID);
}
问题出在模型和 divUpdater.php 中。当我点击列表中的一个项目时,它会给我这个 url
http://localhost/Counter/index.php#self
这是因为模型中的锚标记 (<a href="#self"...)。我想知道是否可以让 divUpdater.php 中的代码在不更改 url 的情况下在后台执行和检索数据。
请问有人知道怎么做吗?
【问题讨论】:
-
你无法从JS访问mysql数据库。缺乏理解是你真正的麻烦
-
我是新手。你有什么建议?
-
我正在使用控制器来访问数据库。有没有其他方法可以做我正在做的事情?
-
这听起来可能很迂腐,但我的第一个建议是在您的帖子中写出正确的英语。照原样阅读它可能会让很多人远离这个问题。其次,开始接受你的问题的答案,也许你会得到更多的答复。
标签: php jquery ajax codeigniter