【问题标题】:Reload div without reloading entire page not working重新加载div而不重新加载整个页面不起作用
【发布时间】:2013-06-21 06:24:21
【问题描述】:

我正在使用 Java Portlets 和 Websphereportal

我有一个包含个人资料图片的页面,您可以删除或更改它, 在页面部分,我的 JSP 文件中有两个 div:

<div id="fotoDefault" style="display: none"> 
<img name="Fotografia" src="/wps/themes/html/experis_v1/images/foto_Placeholder.png"     width="200" height="200" alt="Tu Fotografía tamaño 200 X 200" style="background-color:     #000000">
</div>                  
<div id="fotoReal" style="display: none">
<img name="Fotografia" src="<%=request.getContextPath()%>/fotoServlet" width="200"      height="200" alt="Tu Fotografía tamaño 200 X 200" style="background-color: #000000">
</div>

fotoDefault 是一张图片,显示您可以上传某种尺寸和某种格式的图片

上传图片后,fotoReal 会显示图片

我的问题是,当我尝试上传图片时,我无法看到新图片,除非我刷新页面并且客户端不喜欢那种闪烁。

我一直在尝试用 JQuery/Ajax 来做这件事,但没有成功,在我的 $(document).ready(function(){ 的末尾有这样的想法:

var url2 = location.href;
$('#fotoReal').load(url2);

但它并没有像我预期的那样刷新那个 div

我做错了什么?有什么帮助或建议吗?

谢谢! ^^

雷力士

【问题讨论】:

    标签: jquery ajax html refresh reload


    【解决方案1】:

    你做错了一些事情。

    1) 您放入 $(document).ready(...) 的代码只会在页面加载时执行一次。

    2) 您调用“加载”的 location.href 是当前页面,这意味着它将返回整个页面而不刷新图片。

    【讨论】:

    • 谢谢,我试过了:$('#fotoReal').load(url2 + "#fotoReal");结果相同然后,在 url 后面加一个空格 $('#fotoReal').load(url2 + " #fotoReal");但它消失了,而不是重新加载,然后我在页面源中注意到我有类似于这个
      它没有替换 div,而是添加了一个与页面加载时相同的另一个(显示:无)我添加了一个 document.getElementById(' fotoReal').style.display = 'block';最后,它工作得很好
    • @Ralexrdz - $(SELECTOR).load(URL) 会将 URL 中的任何内容放入元素 SELECTOR 中(无论是 DIV 还是 P 或其他)。如果这是您想要在 DIV 中显示的内容,则您提供给 load() 函数的 URL 需要返回 IMG html。
    猜你喜欢
    • 2013-09-18
    • 2016-04-19
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2014-09-06
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    相关资源
    最近更新 更多