因此,我需要使用查询制作3个选项卡(将此部分放下),但每个选项卡都需要通过Ajax请求检索可过滤的数据。基本上,页面设置为左侧有一个静态div,其中包含过滤器,然后在右侧,标签会根据您选择的那个而变化。
我只是想知道抓取ajax内容并将其放入每个标签的最佳方法是什么?
我希望我明白我的问题。
答案 0 :(得分:1)
如果我正确理解你的问题,这应该非常简单。例如,假设您要检索静态网页,只需将该网页的所有内容插入到容器div中即可...
$('#tab1').click(function(){
//Fetch a webpage (via GET) and load into 'result'
$.get('/path/to/stuff.htm',function(result){
//Replace content of container with result
$('#containerDiv').html(result);
});
});
真的那么简单。如果您需要一段结果(例如从XMLRPC请求中提取CDATA),那么您只需将结果作为jQuery对象加载,找到该元素,然后加载...就像所以...
$('#tab1').click(function(){
//Fetch a webpage (via GET) and load into 'result'
$.get('/path/to/stuff.htm',function(result){
//Make result a jQuery obj
result = $(result);
//Replace content of container with result
$('#containerDiv').html(result.find('mycdata').text());
});
});
我还应该注意 - 如果你有一个包含在CDATA中的XML结果,即使你把它作为html插入,也要把它读作.text()。如果结果未包装在CDATA中,请将其读作.html()。
更新: 如果您需要向服务器发送额外数据(例如对ASC或DESC进行排序),您可能会这样做......
$('#tab1').click(function(){
//Fetch a webpage (via GET) and load into 'result'
$.get(
'/path/to/service',
{ sort:'ASC', startDate:'2012-04-01', endDate:'2012-04-08'},
function(result){
//Replace content of container with result
$('#containerDiv').html(result);
}
);
});