2014-02-26 201 views
-2

我正在使用jQuery $.get方法检索html页面,然后将结果附加到div。带重定向的页面jQuery ajax请求,重定向我的整个页面。

我正在检索的页面重定向到另一个页面(3秒钟后),但这会导致我的父页面重定向,而不是我想要的#mentions

$.get("index.php", { 
    act: "Search", 
    CODE: 01, 
    keywords: nickName, 
    exactname: 1, 
    joinname: 1, 
    cat_forum: "forum", 
    forums: "all", 
    searchsubs: 1, 
    search_in: "posts", 
    result_type: "posts", 
    prune: 30, 
    prune_type: "newer", 
    sort_key: "last_post", 
    sort_order: "desc" 
}, function(data) { 
    $("#mentions").append(data); 
}, "html"); 
+0

只是一个猜测(因为没有足够的信息来真正帮助你),你仍然在提交页面/表单。可能是缺少'return false;' – rlemon

+0

你是否将整个html页面添加到div?将您的JavaScript代码添加到帖子中。 – Wilmer

+0

@rlemon感谢您的快速回复。这里是代码 $ .get(“index.php”,{act:“Search”,CODE:01,keywords:nickname,exactname:1,joinname:1,cat_forum:“forum”,论坛:“all”,searchsubs :1,search_in:“posts”,result_type:“posts”,prune:30,prune_type:“newer”,sort_key:“last_post”,sort_order:“desc”},function(data){ $ “).append(data); },”html“); 每件事情的工作都很好,数据成功附加到div,但是当#mentions div中的数据(html文档)重定向到另一个页面(3秒后)时,重定向页面不会保留在div内 – Slev7n

回答

0

一个可能的解决办法是只得到身体的内部:

$.get("index.php", { 
    act: "Search", 
    CODE: 01, 
    keywords: nickName, 
    exactname: 1, 
    joinname: 1, 
    cat_forum: "forum", 
    forums: "all", 
    searchsubs: 1, 
    search_in: "posts", 
    result_type: "posts", 
    prune: 30, 
    prune_type: "newer", 
    sort_key: "last_post", 
    sort_order: "desc" 
}, function (data) { 
    $("#mentions").append($(data).find("body").html()); 
}, "html"); 

注:如果您有具体的JavaScript和CSS的index.php需要运行这是行不通的,因为你需要一个iframe。

+0

Consol显示如下错误: 未捕获的错误:语法错误,无法识别的表达式 – Slev7n

+0

奇怪的是,在这里没有得到任何语法错误,只需更改$(“#mentions”)。 (data); with $(“#mentions”)。append($(data).find(“body”)。html()); – Wilmer