0

jquery 克隆正在工作,例如,

$("#treeFile" > ul:first > li:first ul > *).clone().appendTo("#dummyTree");

但是,当尝试将此克隆发送到后 ajax 时,文件为空...

var cloneTree = $("#treeFile" > ul:first > li:first ul > *").clone();


$.post("tree.php", cloneTree);

查看萤火虫时,这个http请求是成功的,但是在服务文件系统上查看文件时,它是空的...

4

3 回答 3

1

有几件事

1)只有当你想要里面的所有东西时,才能从"周围#treeFile和最后移除额外的东西> *ul

 var cloneTree = $("#treeFile" > ul:first > li:first ul > *").clone(); //wrong
 var cloneTree = $("#treeFile > ul:first > li:first > ul").clone(); //correct    

2)您可以尝试这个以通过ajax发布数据

var cloneTree = $("#treeFile > ul:first > li:first > ul").html();

JSFIDDLE:http: //jsfiddle.net/5QBYW/1/

于 2013-03-29T05:33:47.900 回答
0

如果它是您需要POST的HTML,您可以执行以下操作:

$.post("tree.php", {html: cloneTree.html()});

如果没有参数名称,则无法将数据发布到服务器。在上面的代码中,您的参数名称是html.

在服务器端,您可以访问此 HTML$_POST['html']

于 2013-03-29T05:26:39.983 回答
0

您可以将 html 传递给服务器,如下所示:

请注意,由于引号放错了位置,会导致代码中的语法错误:

var cloneTree = $("#treeFile > ul:first > li:first ul > *").clone();

$.post("tree.php", {html:cloneTree.html()});

此外,如果您不知道,您不需要克隆对象来发布其 html。您可以直接发送它:

$.post("tree.php", {html:$("#treeFile > ul:first > li:first ul > *").html()});
于 2013-03-29T05:27:23.847 回答