jQuery如何从html响应中获取正文内容
我有点问题 我有一个ajax请求,它被发送出去进行数据库更新。然后返回一个如下所示的响应:jQuery如何从html响应中获取正文内容,jquery,ajax,json,Jquery,Ajax,Json,我有点问题 我有一个ajax请求,它被发送出去进行数据库更新。然后返回一个如下所示的响应: ... ... </head> <body class="contentpane"> {"id":"27","votes":14,"sum":45,"avg":"3.2"} </body> </html> 如何获取body类contentpane的内容,然后将其转换为JSON对象 我的请求函数如下所示: jQuery.post("index.php?o
...
...
</head>
<body class="contentpane">
{"id":"27","votes":14,"sum":45,"avg":"3.2"}
</body>
</html>
如何获取body类contentpane的内容,然后将其转换为JSON对象
我的请求函数如下所示:
jQuery.post("index.php?option=com_ttvideo&task=savevote&tmpl=component", {rate: value, id: <?php echo $this->video->id; ?> }, function(html)
{
// get contents of "contentpane" from response html
// convert to JSON object e.g.
// var rating = jQuery.parseJSON(content_of_body);
// is the above JSON parse correct?
// Select stars to match "Average" value
ui.select(Math.round(rating.avg));
// Update other text controls...
jQuery("#avg").text(rating.avg);
jQuery("#votes").text(rating.votes);
// Show Stars
jQuery("#loader").hide();
jQuery("#rat").show();
});
像这样:
$.parseJSON($('body', html).text())
我假设JSON将被HTML转义,这可能是错误的。如果不是,您有时可以调用.html而不是.text,但更可能需要编写自己的解析器
您应该用真正的JSON响应替换您的Web服务。如下所示:
$.parseJSON($('body', html).text())
我假设JSON将被HTML转义,这可能是错误的。如果不是,您有时可以调用.html而不是.text,但更可能需要编写自己的解析器
您应该用真正的JSON响应替换您的Web服务。非常简单。通过DIV包裹车身内部将完成以下操作:
$.get(url, {}, function(data){
var data = data.replace('<body', '<body><div id="body"').replace('</body>','</div></body>');
var body = $(data).filter('#body');
(... do what you want with body ...)
});
很简单。通过DIV包裹车身内部将完成以下操作:
$.get(url, {}, function(data){
var data = data.replace('<body', '<body><div id="body"').replace('</body>','</div></body>');
var body = $(data).filter('#body');
(... do what you want with body ...)
});
这是我在Joomla中开发的一个组件,为了使php函数保持在Joomla框架内,它需要通过组件MVC框架运行响应——退一步说,它也会返回所有html,啧啧啧:我试图一次完成这1个步骤,1。使用var rating=jQuerybody,html.text从body标记中获取值;但是这个返回为空,替换为.html返回空。@Martin:我无法想象这是没有办法的。然而,我不认识乔姆拉。在这里问一个单独的问题。试试$html.find'body.text.谢谢,但我在Joomla中找到了这篇关于MVC的JSON响应的文章-这是我在Joomla中开发的一个组件,为了让php函数保持在Joomla框架内,它需要通过组件MVC框架运行响应-这是一个倒退,它返回所有这些html也一样,啧啧:我试着一次完成这1个步骤,1。使用var rating=jQuerybody,html.text从body标记中获取值;但是这个返回为空,替换为.html返回空。@Martin:我无法想象这是没有办法的。然而,我不认识乔姆拉。在这里问一个单独的问题。试试$html.find'body.text。谢谢,但我在Joomla中找到了这篇关于MVC的JSON响应的文章-