jQuery AJAX选项卡加载后处理
形势 我有一个使用标签的页面。一些选项卡利用AJAX功能加载其内容。但是,我从服务器返回的响应严格来说并不是要显示的HTML 为了实例化这些选项卡,我使用以下命令,如果可能的话,我希望将处理保持在下面的代码中,因为这只是一个非常大的前端的一部分,它会自动创建一组挂钩:jQuery AJAX选项卡加载后处理,jquery,ajax,json,tabs,Jquery,Ajax,Json,Tabs,形势 我有一个使用标签的页面。一些选项卡利用AJAX功能加载其内容。但是,我从服务器返回的响应严格来说并不是要显示的HTML 为了实例化这些选项卡,我使用以下命令,如果可能的话,我希望将处理保持在下面的代码中,因为这只是一个非常大的前端的一部分,它会自动创建一组挂钩: objElement.tabs({ heightStyle : "auto", show : { effect : "fade", duration : 400 },
objElement.tabs({
heightStyle : "auto",
show : {
effect : "fade",
duration : 400
},
hide : {
effect : "fade",
duration : 400
},
load: function( event, ui) {
/* ### Processing here ###
* Would like to be able to pass the response to a "postrequestprocedure"
* function
*/
});
}
jQuery选项卡将数据直接抛出到选项卡中。我知道我可以使用load事件进行一些后期处理。下面是服务器响应的一个示例,它是一个JSON对象,它确实会显示如下所示的换行标记。为了便于辨认,我把它们漏掉了
{
"content" :
"<span><ul><li>list item</li></ul><p>Some example HTML</p></span>",
"script":[
"a.script",
"b.script"
],
"title":
"User Login",
"css": {
"dev.min":"screen"
}
}
{
“内容”:
“- 列表项
一些示例HTML”,
“脚本”:[
“a.脚本”,
“b.脚本”
],
“标题”:
“用户登录”,
“css”:{
“dev.min”:“屏幕”
}
}
问题
- ajax属性仅通过$tabs({load:function(event,ui)})部分公开;接口;我无法通过这种方式访问相关操作/参数
- 当需要收集响应时;如果我使用html(),它将返回一些html的结束标记,这些标记不是响应的一部分。确切地说,我已经在我的回复中说明了HTML,这些额外的标记不是它:
- 如果我使用text()收集内容,任何打开的HTML标记都会被剥离
亲切问候对于任何与我有相同问题的人,我已经解决了它,而不需要执行任何重写或类似操作 很简单,由于API发生了变化,获取响应的未记录方式如下:
$().tabs({
beforeLoad: function(event, ui) {
ui.jqXHR.done(function(response) {
console.log(response);
});
}
});
对于任何和我有相同问题的人,我已经解决了,而不需要执行任何重写之类的操作 很简单,由于API发生了变化,获取响应的未记录方式如下:
$().tabs({
beforeLoad: function(event, ui) {
ui.jqXHR.done(function(response) {
console.log(response);
});
}
});
你到底想要什么。重写ajax选项或在load事件中获取选项卡的内容以处理事情。我认为对于您的情况,最好覆盖选项卡的默认ajax请求。@Zahid-谢谢您的回复。我希望能够覆盖选项卡的ajax请求。我已经更新了我的原始问题,并提供了一些关于我目前如何实例化您想要的选项卡的详细信息。重写ajax选项或在load事件中获取选项卡的内容以处理事情。我认为对于您的情况,最好覆盖选项卡的默认ajax请求。@Zahid-谢谢您的回复。我希望能够覆盖选项卡的ajax请求。我更新了我的原始问题,并提供了一些关于我目前如何实例化选项卡的详细信息