javascript - Codeigniter、jQuery 和 Ajax - 动态显示新数据库内容时防止页面刷新

标签 javascript jquery ajax codeigniter refresh

我试图实现一些相对简单的事情 - 允许用户在 View 页面上发表评论,更新数据库并在页面上动态显示新内容,而无需刷新整个页面。

到目前为止,我的努力并不成功 - 我正在做的事情可能存在几个问题!

在 View 页面上我尝试过这个(将 2 个变量发送到 CI Controller 函数):

<script type="text/javascript">
function ajax(id, user_id) {
jQuery('#dynamicdiv').load('/controller/function/' + id + '/' + user_id);
}
</script>

<div id='dynamicdiv'>
</div>

我有一个文本区域来收集用户评论,在 Controller 函数中我应该能够将其调用为发布数据以便将其写入数据库吗?如果是这样,我仍然需要将另外两个变量($id 和 $user_id)发送到 ajax 函数。

<?php $atts = array (
  'class' => "alignright button",
  'onClick' => "ajax('$id,$user_id')",
  ); ?>
<?php echo anchor(current_url(), 'Post my Comment', $atts); ?>

在 Controller 中,它涉及与我希望用户停留的页面不同的功能( View ):

$data = $this->model->database_query($id, $user_id);

echo $data; // from reading other posts it seems I would process the data within this function, to have it displayed on the page the user is viewing?

感谢任何帮助!

最佳答案

不要忘记阻止默认 anchor 行为(例如,将 return false; 添加到 onclick 参数中)。

<?php $atts = array (
'class' => "alignright button",
'onClick' => "ajax('$id,$user_id'); return false;",
); ?>

关于javascript - Codeigniter、jQuery 和 Ajax - 动态显示新数据库内容时防止页面刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13783626/

相关文章:

c# - 为什么我的更新面板不起作用?

javascript - 避免代码重复 - reactJs - javascript

javascript - animejs的时间间隔

javascript - 如何将html页面导出到ms.带有外部 CSS 的单词 (.doc)?

javascript - 如何使用 Javascript 轻松实现可视化交互式树数据结构?

javascript - 同时链接点击和异步 AJAX 请求期间的竞争条件?

javascript - 如何在 window.open 方法中将动态 PHP 变量作为参数传递

javascript - 更改属性后设置新位置

javascript - $(window).width() 和 $ ('body' ).scrollLeft() 在 IE 和 Firefox 中不起作用

javascript - 如何过滤SSE脚本中的重复消息?