我想将数据从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);
}
});
});
});
但是当我尝试转到页面时,没有显示数据。
答案 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(数据);
}
});