怎么在html中用javascript的变量?

2012-03-04 10:08:58 +08:00
 vanisher
<html>
<head>xxx</head>
<body>
<script type="text/javascript">
a=59658

</script>

< img src="http://www.example.com/a000" />

</body>
</html>

上面的例子img src= 后面的a我想用到javascript中定义的变量a,该怎样实现?
5126 次点击
所在节点    问与答
13 条回复
ligyxy
2012-03-04 10:20:47 +08:00
整行语句用document.write输出
annielong
2012-03-04 10:22:12 +08:00
<script language="javascript">
a=59658;
function changeSrc()
{
icon.src =a;
}
</script>

<button onclick="changeSrc()">替换地址</button>
<br>
<img name=icon src=http://www.example.com/a000>
ant_sz
2012-03-04 10:28:01 +08:00
建议用jQuery
html和js不是模板渲染语言,不像PHP那样的工作方式,你需要用JS先获取到对应的元素再修改对应属性
lcxz
2012-03-04 10:49:40 +08:00
Document.write("<img src='http://*.*.*/"+a+"000' />");
zythum
2012-03-04 11:09:27 +08:00
js不是模板渲染语言 不建议用document.write写进去
simple_plan
2012-03-04 11:20:33 +08:00
在js里面用变量

<script type="text/javascript">
a=<%=var_img%>
</script>

< img src="http://www.example.com/<%=var_img%>" />
vanisher
2012-03-04 14:13:19 +08:00
@simple_plan 不行啊。。
vanisher
2012-03-04 14:14:02 +08:00
@lcxz 不行。。
guoquan
2012-03-04 14:49:02 +08:00
我来总结一下

@simple_plan 那样写变成啥语言了-。-

@lcxz 的意思是
<html>
<head>xxx</head>
<body>
<script type="text/javascript">
a=59658
</script>
<script type="text/javascript">
Document.write("<img src='http://www.example.com/\"+a+"000' />");
</script>
</body>
</html>

@zythum 哥表示不建议这样写

比较靠谱的方法看起来应该是这样
<html>
<head>xxx</head>
<body onload="foo">
<script type="text/javascript">
//这玩意也可以写在下面
a=59658;
</script>

<img id="bar" src="http://www.example.com/images/loading.gif" />

<script type="text/javascript">
foo = function(){
document.getElementById('bar').src='http://www.example.com/' + a + '000';
}
</script>
</body>
</html>

这样和@annielong 基本上是一个意思,只是他的需要按钮点击触发加载变化图片而这个是由页面加载完成触发的。

@ant_sz 关于采用jquery可以是个option,但是中心思想跟以上代码是一样的。
lcxz
2012-03-04 18:43:21 +08:00
@vanisher 最好还是给img标签加个ID,之后获取ID修改src属性.
vanisher
2012-03-04 19:01:51 +08:00
@guoquan 谢谢你这么用心回复啊~~:)

其实@lcxz 的方法是对的,我自己SB把符号搞错了=。=
duhastmich
2012-03-04 20:44:06 +08:00
knockout吧
soulteary
2012-03-05 00:26:12 +08:00
同9楼,如果懒得引用jquery,document.getElementById('你的图片id').src='http://www.example.com/' + a+ '000';
或者定义个容器,innerHTML赋值也行。传说以前用iframe传递数值,如果有兴趣,也是一种方法。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/28709

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX