将HTML DOM保存到服务器上的文件
问题描述:
我有一个html5 web page,它允许用户在div之间拖放对象。在用户移动对象后,我想将当前DOM保存到我的Web服务器上的文件中。将HTML DOM保存到服务器上的文件
我知道我可以使用JavaScript获取当前的HTML DOM,但当然,我无法将它保存到使用javascript的服务器上的文件中。所以我想过将html传递给PHP页面来执行“save”函数,但我无法弄清楚如何将html传递给PHP页面。我试着将它作为URI中的一个参数发送,但是PHP页面没有正确地从URL中获取整个字符串。
此方法是否可行?如果是这样,我错过了什么让HTML字符串正确传递给PHP页面?或者我应该使用其他方法?
答
ajax是去这里的路。如果您对ajax不熟悉,请通过Google进行学习。任何现代的Web应用程序都需要以某种方式进行Ajax集成。
这里是如何使用javascript与服务器通信。 请注意我使用jQuery
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".draggableDivs").mouseup(function(event){
var documentStructure = ''; // whatever js you use to get document structure
var d = {"document_structure": documentStructure};
$.ajax({
url: "test.php", //Your url both relative and fixed path will work
type: "POST", // you need post not get because you are sending a lot of data
data: d,
success: function(response) {
alert('saved');
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
});
});
});
</script>
在服务器上,那么你会做你的PHP和保存数据。 你做,你可以只是一个JSON对象作出反应,如果需要,如果不只是退出
+0
谢谢,马克之后。你的示例代码非常棒,现在我已经有了这个工作。我绝对了解到jquery和ajax两者! –
答
您可以像使用
- 的方法拖拽后使用javascript下降,表明一键拯救了DOM。
- 单击按钮上的事件,将当前的dom放入一个变量中。
- 使用ajax将您当前的dom传输到一个php文件(ajax文件)。
- 在ajax文件中,将其保存到数据库中。
尝试通过网页内容通过AJAX到PHP,或试图通过一个POST请求的形式提交 – Bxx