簡體   English   中英

php:如何將數據庫值傳遞到javascript / jquery函數

[英]php : how to pass database value into a javascript/jquery function

我正在項目中實現標簽功能。 在我的演示標簽中,我發現它們正在自動功能的javascript函數中傳遞名稱。

這是我的演示項目中的功能,

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

所以,我想將值從我的php控制器傳遞給此函數,以便從數據庫表中獲取自動完成值

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數組或對象轉換為JSON對象,JavaScript可以使用該對象:

<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>

我沒有測試過這個例子。 顯然,您需要對其進行調整以適合您的環境。

您將為此編寫一個ajax函數

$.ajax(
    url     :   "<?php echo site_url('controller/method')?>",
    type    :   'POST',
    data    :   'para=1',
    success :   function(data)
    {
        if(data){
            var sampleTags  =   data;
        }
    }
);

只需回顯您的php變量

 $(function()
      {
          var sampleTags = '<?php echo $data["query"]; ?>'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM