动态改变img标签的src问题

我在Servlet中调用了生成二维码的包,想在另外一个页面中显示出来刚刚生成的二维码。我在
<%>中设置了String的路径变量,在src中直接调用。可是就是不出现图片。
但是,如果我直接输入路径的String的值,就可以显示出图片来。同样是“../xx/xx.png”的字符串,为什么前者就不行呢?
clipboard.png

clipboard.png

这个是直接输入的结果。
clipboard.png

第一次更新:
并不是各位所说的双引号的问题,我加上了双引号,依旧没图片

clipboard.png

浏览器端的代码

clipboard.png
第三次更新:
各位可以看到,当我用test作为src的时候是可以显示出图片来的,当我用imgpath2的时候是不显示图片的,我把这两个字符串都在控制台打印了,可以看到:他们是一样的啊!!
但是当我用==去作比较的时候,是不同的,我觉得问题应该是出现在了这里。
clipboard.png

阅读 6.1k
5 个回答

src="url",在路径外面加上引号试试,可能少了引号没有解析路径。

是双引号的问题。

你模板输出的图片资源地址类型是string,但是输出的时候是不带"的,需要注意。

HTML5 中对于 attribute 不强制要求加 " ,你先确认下你的资源文件路径,对不对。

clipboard.png

求一下这两个字符的长度,是不是相同,我猜那个不能用的长度比较长。。。

unicode 里存在一些变态的字符(当然是为了解决某些问题),比如,零宽度空格,零宽度连字符,零宽度非连字符,这写字在任何字体下看起来写了跟没写一样,所以表面上是看不出来的,但是他们在内存中确实不一样的。。。。。。曾经有个回答总结过,暂时没找到。

建议用可以特殊标记这些字符的编辑器比如vim, firefox 的代码草稿纸打开你的这个文档看看,或者用 winhex,Linux命令 xxd 查看一下他的二进制也可以。

直接说步骤。

  1. 打开浏览器调试窗口,网络,刷新页面,看看是否有下载图片数据。
  2. 如果有下载图片但是结果是失败,则检查请求的url。并与图片的真实url对比。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题