没有从ajax到php接收数据

时间:2017-10-25 09:21:04

标签: javascript php jquery ajax

我想将数据从javascript发送到我要显示的另一个php页面。我发现我需要使用Ajax将数据传递给php,所以我试了一下。

我的文件在哪里是javascript:

function get_pds_resources() {
  wp_enqueue_style("main", get_template_directory_uri() . "/assets/css/main.css");
  wp_deregister_script('jquery');
  wp_enqueue_script("jquery", get_template_directory_uri() . "/assets/js/jquery.js");
  wp_enqueue_script("dropotron", get_template_directory_uri() . "/assets/js/dropotron.js", array('jquery'));
  wp_enqueue_script("selectorr", get_template_directory_uri() . "/assets/js/selectorr.js", array('jquery'));
  wp_enqueue_script("scrollex", get_template_directory_uri() . "/assets/js/scrollex.js", array('jquery'));
  wp_enqueue_script("scrolly", get_template_directory_uri() . "/assets/js/scrolly.js", array('jquery'));
  wp_enqueue_script("skel", get_template_directory_uri() . "/assets/js/skel.js", array('jquery'));
  wp_enqueue_script("util", get_template_directory_uri() . "/assets/js/util.js", array('jquery'));
  wp_enqueue_script("main", get_template_directory_uri() . "/assets/js/main.js", array('jquery'));
}

add_action("wp_enqueue_scripts", "get_pds_resources",11);

我想将数据发送到另一个包含以下内容的php页面:

    $('#button').on('click', function () {
  $.jstree.reference('#albero').select_all();
  var selectedElmsIds = [];
  var selectedElmsIds = $('#albero').jstree("get_selected", true);
  var i = 0;
  $.each(selectedElmsIds, function() {
    var nomenodo = $('#albero').jstree('get_selected', true)[i].text;
    //var idnodo = selectedElmsIds.push(this.id);
    var livellonodo = $('#albero').jstree('get_selected', true)[i].parents.length;
    //console.log("ID nodo: " + selectedElmsIds.push(this.id) + " Nome nodo: " + $('#albero').jstree('get_selected', true)[i].text);
    //console.log("Livello: " + $('#albero').jstree('get_selected', true)[i].parents.length);
    i++;
    $.ajax({
                    type: "POST",
                    data: { 'namenodo': nomenodo,
                    'levelnodo': livellonodo
                          },
                    success: function(data)
                    {
                        $("#content").html(data);
                    }
                });
  });
});

但是当我尝试转到页面时,没有显示数据。

3 个答案:

答案 0 :(得分:0)

这是一个非常基本的错误,我认为每个初学者(包括我)在使用ajax将数据发布到另一个php页面时都会这样做。

您的ajax代码实际上是将数据发布到lamiadownline.php(如果您正确使用变量)但是您无法通过简单地使用echo来获取该数据。

Ajax post方法将数据发布到你的php页面(lamiadownline.php)但是当你想在接收者页面上回显相同的数据时(lamiadownline.php),你实际上又重新加载了lamiadownline.php页面,这使得$ _POST [“namenodo”]值为null。

希望这会有所帮助。

答案 1 :(得分:0)

首先,您将无法通过浏览该页面来查看您发布的内容。

其次,是这个

<?php echo $_POST["namenodo"]; ?>

在当前页面?

否则,请指定网址

 $.ajax({
     url: "lamiadownline.php",
     type: "POST",
     data: { 'namenodo': nomenodo,
         'levelnodo': livellonodo},
     success: function(data) {
         $("#content").html(data);
     }
 });

答案 2 :(得分:0)

//试试这个

$。AJAX({
                     键入:&#34; POST&#34;,
                     网址:&#34; Your_php_page.php&#34;
                             数据:{namenodo:nomenodo levelnodo:livellonodo},
                                成功:功能(数据)
                           {
                        $(&#34;#含量&#34)的html(数据);
                    }
                });