PHP : how to pass database value into a javascript/jquery function

标签 php javascript jquery codeigniter

我正在我的项目中实现标签功能。 在我的演示标签中,我发现它们在自动完成的 javascript 函数中传递名称。

这是我的演示项目中的一个函数,

   <script>
   $(function()
      {
          var sampleTags = ['c++', 'scala', 'groovy', 'haskell', 'perl', 'erlang', 'apl', 'cobol', 'go', 'lua'];
      ..................
      .................

所以,我想将值从我的 php Controller 传递给这个函数,以便从我的数据库表中获取自动完成值

For example i am getting tags values from my db in my Controller like this:

 ` $data["query"] = $this->ordermodel->fetch_orderlist();`
   $this->load->view('tagpage', $data);  //loading my page tag page where above function exists

现在如何将 $data["query"] 值传递到上面的 javascript 函数中? 请帮忙

最佳答案

您可以使用 PHP 的 json_encode 将变量回显到页面上。此函数会将 PHP 数组或对象转换为 JavaScript 可以使用的 JSON 对象:

<script>
$(function() {
      var sampleTags = <?php echo json_encode($query); ?>;
})();
</script>

但更好的方法是通过 Ajax 请求这些值。假设您有一个名为 values.php 的 PHP 脚本:

<?php
    #...
    #assign $query here
    #...
    echo json_encode($query);

然后,在 JavaScript 中(在您要使用 sampleTags 变量的页面上),您可以使用 jQuery 的 .ajax 函数来发出一个简单的 Ajax 请求:

<script>
var sampleTags;

$.ajax({
    url: 'values.php'
}).done(function(data) {
    if (data) {
       sampleTags = data;
    }
});
</script>

我还没有测试过这个例子。显然,您需要对其进行调整以适应您的环境。

关于PHP : how to pass database value into a javascript/jquery function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16439052/

相关文章:

javascript - 需要限制较少的 json 解析器

javascript - 用于触摸屏/平板电脑的 jQuery mouseleave

c# - 排行榜,排名查询,如何返回高于/低于用户排名的行

javascript - 如何解决 Javascript 正则表达式模式中的意外量词?

php - mailchimp api 2.0 通过 php 订阅?

javascript - spin.js 似乎不工作/出现

从 0 开始的 Javascript 关联数组键

javascript - 模式不适用于 ie8

php - 集合的 Laravel 5.5 API 资源(独立数据)

php - 如何在用户文本字段输入后自动添加值