ECHO在PHP中发布来自AJAX的数据

时间:2016-03-02 11:06:28

标签: javascript php jquery ajax

我想回应使用AJAX-JQUERY的帖子数据。

我在该下拉列表中有一个下拉列表,我从数据库中显示了一些值。 现在,我选择frmo下拉列表的项目将作为POST发送给我的控制器。

如果我在浏览器中打开网络选项卡,我可以看到使用我的AJAX脚本获得的POST数据。

像这样: response

但是,如果我试图回声,它在浏览器上没有显示任何内容。

我正在使用这个脚本:

<script type="text/javascript">

$( ".specialLink" ).click(function() {
      var site = this.id;
      var url= "<?php echo base_url('customer/dashboard/index') ?>"; 

       //get value for throw to controller

      $.ajax({ 
          type: "POST", //send with post 
          url: "<?php echo base_url('customer/dashboard/index') ?>", 
          data: {site:site}, 
          success:function(data){ 

          },

      });
  });

DROPDOWN:

<li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Your Sites <span class="caret"></span></a>
  <ul class="dropdown-menu">
    <?php
      foreach($sites as $site)
      {
        echo "<li class='specialLink' id='".$site->site_key."'><a href='#'>".$site->site_key."</a></li>";
      }
    ?>
  </ul>
</li>

PHP SCRIPT

var_dump($_REQUEST);
var_dump($_POST);

2 个答案:

答案 0 :(得分:3)

  

但如果我试图回声,它在浏览器上没有显示任何内容

这是因为您使用Ajax发出请求而不是仅在主窗口中加载它。

如果要在主窗口中加载内容,则只需提交常规表单即可。如果您必须使用JavaScript,那么您可以使用DOM方法生成表单,将其添加到页面,然后调用其submit()方法。

(也就是说,你似乎试图模拟链接,这会使得GET请求比POST请求更合适,并允许你只使用常规链接(或者如果你必须使用JS则设置location.href = ... ,你真的不应该这样做)。 如果你想使用Ajax,那么你需要改变它:

success:function(data){ 

},

...以便您实际使用data的值执行某些操作(例如将其添加到当前页面的DOM中)。

答案 1 :(得分:0)

请以ajax电话

的形式发送此表单中的数据
Model

键应该是字符串,然后是js变量中的值。