-1

我已经定义了以下 JavaScript:-

<script type="text/javascript">
var html = ' ';
var i = 1 ;

if ( "#variable.1#" != null) {
    html += '<div><a href="/Service1.svc/vf/img?imgid=#variable.1#" >"View Page" + i </a></div>';
i =i +1;
}

if ( "#variable.2#" != null) {
   html  += '<div><a href="/Service1.svc/vf/img?imgid=#variable.2#"> "View Page"  i </a></div>';
i = i=1;
}

if ( "#variable.3#" !=null) {
    html += '<div><a href="/Service1.svc/vf/img?imgid=#variable.3#" >"View Page" + i </a></div>';
i = i+1;
}


document.write(html);
</script>

但是如果所有变量都不为空,上述javascript的输出将是:-

"View Page" + i
"View Page" i
"View Page" + i

那么我如何强制输出为外部集成图像

View Page 1
View Page 2
View Page 3
4

2 回答 2

1

利用

html += '<div><a href="/Service1.svc/vf/img?imgid=#variable.3#" >View Page '+i+'</a></div>';
于 2012-11-29T09:56:25.793 回答
1

您需要按如下方式格式化字符串:

html += '<div><a href="/Service1.svc/vf/img?imgid=#variable.3#" >"View Page" ' + i + '</a></div>'

这将获取的值i并将其附加到字符串中,而不是i本身。

作为附加信息,请记住,在 JavaScript 中,当将字符串添加到整数时,整数会被解析为字符串而不是逆字符串。正如评论中指出的那样,

var answer = 1 + 1 + "1"
// answer = 21, not "111" and not 3
于 2012-11-29T09:56:56.857 回答