如何在JQuery中访问php数据?

时间:2013-03-13 08:58:26

标签: php jquery

在下面的Php代码中,我想从我的jQuery脚本中访问存储在$ val变量中的值,以便能够发送ajax调用。        对于每个表行,$ val将包含唯一值,我需要访问唯一值   值可以发送到我的帖子请求。

             <?php 
                if($batch_query != null){
                  $i = 0;  
                  foreach($batch_query->result_array() as $row){
                    $val = "'".$row['course_id'].",".$row['center_id'].",".$row['batch_id']."'";//These values are coming from the server side and I need to send it to the controller for the Ajax. 
                    echo "<tr>";
                      echo "<td>".$row['course_name']."</td>";
                      echo "<td>".$row['center_name']."</td>";
                      echo "<td>".$row['batch_name']."</td>";
                      echo "<td>"."<button id= \"btnnumber_$i\"  class='btn info toggler' value=$val>Show Info  <i class='icon-arrow-down'></i></button>"."</td>";// here I am using the value attribute and assigning it the value $val.
                  }
                 } 
                   ?>

这是我的JQuery

       $(function(){
          $.post('/path /to/ my /controller', {value: $val}).done(function(data){ 

        }); 
       });

        How to get those values in the $val ?

任何帮助都将受到高度赞赏。

7 个答案:

答案 0 :(得分:6)

jquery中更好的方法是......

$(function(){ 
  var btnvalue=$('button.info').attr('value');
   $.post('/path /to/ my /controller', {value: btnvalue}).done(function(data){ 

    }); 
});

和最简单(如果您有单独的.js文件,这是不可能的)......

var btnvalue= <?php echo $val ?>
 $.post('/path /to/ my /controller', {value: btnvalue}).done(function(data){ 

    }); 

答案 1 :(得分:2)

我会更改按钮,以便将$val放入数据属性中,如下所示:

"<button id=\"btnnumber_" + $i +"\"  class=\"btn info toggler\" data-value=\"" + $val + "\">Show Info  <i class=\"icon-arrow-down\"></i></button>"

然后我会将你的jquery更改为

$('button').click(function() {
  $.post('/path /to/ my /controller', 
     {value: $(this).data('value')}).done(function(data){ 

  }); 
});

这是按钮点击获取数据值属性的小提琴示例:http://jsfiddle.net/T7cJR/

答案 2 :(得分:1)

将它们作为javascript变量写在页面上。

答案 3 :(得分:1)

如果您的jquery位于同一页面,则可以使用以下内容。

    $(function(){
        $.post('/path /to/ my /controller', 
         {value: <?php echo   $val?>}).done(function(data){ 

     }); 
    });

答案 4 :(得分:1)

像这样使用:<?php echo $val; ?>

$.post('/path /to/ my /controller', {value: <?php echo $val; ?>}).done(function(data){

您需要在此行之前为此变量指定值。

答案 5 :(得分:1)

编写代码以获取$ var变量中的所有值。然后在脚本标签内的页面末尾,写下这个

$(function(){
          $.post('/path /to/ my /controller', {value: <?php echo $val ?>}).done(function(data){ 

          }); 
});

答案 6 :(得分:1)

您可以将数据保存为tr属性,然后使用jquery:

访问它
<?php 
 if($batch_query != null){
    $i = 0;  
    foreach($batch_query->result_array() as $row){
       $val = "'".$row['course_id'].",".$row['center_id'].",".$row['batch_id']."'";//These values are coming from the server side and I need to send it to the controller for the Ajax. 
       echo "<tr id='".$val."'>";
        ...