如何在ajax调用后重新加载div内容而不重新加载整个页面

时间:2017-12-25 02:11:47

标签: javascript jquery ajax

我想要实现的是在不重新加载整个页面的情况下重新加载页面上div的内容,我想在上传照片后重新加载div,这样新上传的照片就可以从数据库中加载了但是我没有# 39; t想要重新加载整个页面,但代码没有工作,而是我把整个页面加载到下面的div likr     function ajaxLoad(){

     var loadUrl = window.location.href;
    // $(".carouser-inner ").load(loadUrl);
     $(".carouser-inner ").load(loadUrl+".carouser-inner ");
}

我在ajax成功后调用该函数,但下面是我得到的

我想要什么THIS IS WHAT I'D WANTED TO ACHIEVE AND THE ID FROM THE DATA EMBEDED ALREADY

但下面是我得到的,在我重新加载页面后,它现在恢复正常,如我所愿 enter image description here

任何有关如何实现这一目标的帮助将不胜感激,谢谢

3 个答案:

答案 0 :(得分:0)

作为documentation of jQuery's .load(),您需要在网址和选择器之间留出空格,因此:

$(".carouser-inner ").load(loadUrl+" .carouser-inner");

答案 1 :(得分:0)

首先清除div,然后设置div的内容。您可以使用某个功能清除它,可能clearDiv()或只需设置.innerHTML = "",如果您需要这样做的话。

使用AJAX / XHR / Fetch获取内容将是异步的,因此您需要将其设计为.Promise并解决它.then设置内容。

答案 2 :(得分:0)

这完全取决于你使用load()返回的url。看来你在load()中使用的url会返回整个页面的HTML。

相反,您希望使用load()的url只返回要加载到div中的html部分

所以你的jquery调用没有问题,它是与load()一起使用的url返回的值,需要修复。这是一个服务器端问题,与jquery代码无关。

所以,简而言之:你的修复是修复与load()一起使用的url,只是让它返回你想要的部分html

HTH