Jquery .clone() 导致 $.post 失败
Jquery .clone() causing $.post to fail
我使用 .clone(true, true) 复制了 HTML,因为我想保留 JQuery 事件处理程序。 当我通过 $.post 将其传递给 PHP 时,帖子失败并在 firebug 中给我以下错误
uncaught exception: [Exception... "Could not convert JavaScript argument" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" location: "JS frame :: jquery-1.7.2.js :: <TOP_LEVEL> :: line 7740" data: no]
我想以某种方式保留 HTML 及其 JQuery 事件处理程序,因为我正在编写一个脚本来保存用户所处的状态。
更新(添加的代码)
//Save HTML w/ JQuery
GSaveState = new Object();
GSaveState['HTML'] = $('#content').clone(true, true);
$.post("DecoPOState.php", { SavedState: GSaveState},
function(data){
alert("Test");
}
);
你的代码的问题在于你试图发送一个 DOM 元素 - 由于显而易见的原因你不能这样做。假设您要发送该元素的 HTML 代码,请使用 $('#content').html()
var GSaveState = {
HTML: $('#content').html();
};
但是,事件处理程序不包含在该字符串中,因为它们附加到元素而不是内联事件(即它们不是出现在 DOM 树中的属性)。
但是,保存应用程序的状态事件处理程序根本不重要。对要保存的状态信息使用变量,并将其包含在 POST 数据中。
相关文章:
- Python POST 请求失败
- 对php的Angular post请求失败
- Https XMLHttpRequest POST在本地主机上失败
- gwt使用本机javascript向远程服务器发送POST请求失败
- Jquery .clone() 导致 $.post 失败
- POST 请求失败,没有错误消息 (Parse.com / ExpressJS)
- 在 Couchdb ( 虹膜沙发 ) POST 请求中添加新文档失败,状态为 500
- php&ajax检索post数据失败
- 为什么onreadystatechange在尝试将数据POST到php脚本时失败
- 成功的$.Ajax和$.Post调用总是从C#返回失败
- .post()失败回调函数
- $http POST在AngularJS中失败,在google REST客户端中成功
- Ajax POST失败,但可以在控制台中工作
- Steam Post请求-加载资源失败:服务器的响应状态为400(错误请求)
- "错误“;或“;失败”;在jQuery中调用$.post Ajax
- POST方法即使if条件失败也能工作
- XHR加载失败:POST
- Angularjs的HTTP POST调用在部署中验证登录失败-返回400错误
- node.js中的POST失败
- $.post 失败,出现错误“..不是一个函数”