使用JavaScript进行字符串连接

8

我正在尝试以以下方式构建HTML字符串:

htmlString = '<html>';
var headerString = "image1";
var sImage = "Android_images/"+headerString+".png";
htmlString += '<img src='+sImage+' />';
htmlString = '</html>';

我需要动态添加一个图片字符串,但它显示为:
<img src=Android_images/dfdfd.png />

你为什么要使用 <html> 标签? - Blender
你所说的图像字符串是什么意思?是指img元素吗? - me_digvijay
6个回答

8

你在最后一行重新设置了该变量:

htmlString = '</html>';

添加一个+即可解决问题:
var htmlString = '<html>';
var headerString = "image1";
var sImage = "Android_images/" + headerString + ".png";
htmlString += '<img src="' + sImage + '" />';
htmlString += '</html>';

此外,为什么这里有<html>标签?

我正在为Titanium构建WebView。 - vishnu

2

尝试:

var htmlString = '<html>';
var headerString = "image1";
var sImage = "Android_images/"+headerString+".png";
htmlString += '<img src="'+sImage+'" />';
htmlString += '</html>';

0
var htmlString = '<html>';

htmlString += '</hmtl>';

0

在使用htmlString之前,您还没有将其定义为变量:

var htmlString = '<html>';

0

你应该总是使用 var

不使用 var 有两个主要缺点:

  • 在函数内访问未在该函数中定义的变量将导致解释器查找作用域链以查找具有该名称的变量,直到它找到一个或者到达全局对象(在浏览器中通过 window 访问)并创建一个属性。这个全局属性现在可以在任何地方使用,可能会导致混淆和难以检测的错误;
  • 在 ECMAScript 5 严格模式下,访问未声明的变量将导致错误。

这里完美运行,在最后一行中你应该使用 +=

htmlString += '</html>';

0
使用以下代码
var htmlString = '<html>';
var headerString = "image1";
var sImage = "Android_images/"+headerString+".png";
htmlString += '<img src="'+sImage+'" />';
htmlString += '</html>';

"htmlString" 将包含以下输出

<html><img src="Android_images/image1.png" /></html>

我认为这会对你有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接