Jquery Can';t query$.post返回的数据
第一个console.log的结果是Jquery Can';t query$.post返回的数据,jquery,jquery-selectors,Jquery,Jquery Selectors,第一个console.log的结果是 $.post( url, JSON_POST, function( data ) { var content = $( data ); var content = $( data ).find( '#json' ); console.log(data); console.log(content); } ); {“状态”:1,“消息”:“回复已成功提交”。}
$.post( url, JSON_POST,
function( data ) {
var content = $( data );
var content = $( data ).find( '#json' );
console.log(data);
console.log(content);
}
);
{“状态”:1,“消息”:“回复已成功提交”。}
sdfsafdsfds
但是由于某种原因,第二个日志返回一个空数组。我试图在数据变量中查询html,但结果总是空集
我真的很感激你能帮我做这件事。我阅读了$.post手册,但是没有提到这个问题
p.S我正在使用JQUERY 1.7
find
查找所选元素的后代。在您的例子中,这两个元素都没有子元素,更不用说IDjson
的子元素了
相反,您正在查找所选元素中的特定元素。在这种情况下,您应该选择当前元素:
<div id="json">{"status":1,"message":"Reply submitted successfully."}</div>
<div id="test">sdfsafdsfds</div>
find
查找所选元素的子体。在您的例子中,这两个元素都没有子元素,更不用说IDjson
的子元素了
相反,您正在查找所选元素中的特定元素。在这种情况下,您应该选择当前元素:
<div id="json">{"status":1,"message":"Reply submitted successfully."}</div>
<div id="test">sdfsafdsfds</div>
您在XML中使用容器元素吗? 也许这就是问题的原因 必须使用xml中的根元素来获得正确的解析。因此,您的XML响应应该如下所示:
var content = $(data).filter('#json');
{“状态”:1,“消息”:“答复已成功提交”。}
sdfsafdsfds
元素可以是您喜欢的任何内容,例如:
或
是的,这是你的问题 在javascript控制台中尝试以下操作:
<root>
<div id="json">{"status":1,"message":"Reply submitted successfully."}</div>
<div id="test">sdfsafdsfds</div>
</root>
var asd='{“状态”:1,“消息”:“回复已成功提交”。}sdfsafdsfds'
console.log($(asd.find(“#json”)>[]
console.log($(“+asd+”).find(“#json”)>[{“状态”:1,“消息”:“回复已成功提交”。}]
您是否在XML中使用容器元素?
也许这就是问题的原因
必须使用xml中的根元素来获得正确的解析。因此,您的XML响应应该如下所示:
var content = $(data).filter('#json');
{“状态”:1,“消息”:“答复已成功提交”。}
sdfsafdsfds
元素可以是您喜欢的任何内容,例如:
或
是的,这是你的问题 在javascript控制台中尝试以下操作:
<root>
<div id="json">{"status":1,"message":"Reply submitted successfully."}</div>
<div id="test">sdfsafdsfds</div>
</root>
var asd='{“状态”:1,“消息”:“回复已成功提交”。}sdfsafdsfds'
console.log($(asd.find(“#json”)>[]
console.log($(“+asd+”).find(“#json”)>[{“状态”:1,“消息”:“回复已成功提交”。}]
非常感谢。我想我会买一本JQuery书来弥补我所缺少的小东西。@Senouciothman:不客气:)我的建议是仔细阅读文档并熟悉DOM术语。@omnosis:错。他没有使用XML;多重根没有什么错。是的,他有。他调用了一个$.post
,这是一个ajax请求,数据
就是响应。@omnosis:谁说响应是XML?您的解决方案也是正确的,并且是另一种解决方法,这很好,但OP从未声明他正在使用XML。(顺便说一句,如果你没有在@SLaks
中提到SLaks,他将不会收到你的评论)。非常感谢。我想我会买一本JQuery书来弥补我所缺少的小东西。@Senouciothman:不客气:)我的建议是仔细阅读文档并熟悉DOM术语。@omnosis:错。他没有使用XML;多重根没有什么错。是的,他有。他调用了一个$.post
,这是一个ajax请求,数据
就是响应。@omnosis:谁说响应是XML?您的解决方案也是正确的,并且是另一种解决方法,这很好,但OP从未声明他正在使用XML。(顺便说一句,如果你没有在@SLaks
中提到SLaks,他将不会收到你的评论通知)。