蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

JS能用动态字段名吗?

function zz(n)//纸张名和价格的函数
{
        var str;
        var id;
        var jia;
        var cc

                cc = form1.id+"[color=#00ff00]n[/color]".value;
                //str = cc.split("£");
                //id = str[0];
                //jia  = str[1];
        document.form1.Yjia+"[color=#00ff00]n[/color]".value=cc;//纸张的价格
}

n是动态字段名

不知道为什么不能用?

可以。用eval()

这位老兄能给个例子吗?

凑合看吧。
[html]


























<script>

image1 = new Image(112,112)
image1.src = "desk1.gif"
image2 = new Image(112,112)
image2.src = "http://www.blueidea.com/articleimg/bbsimg/topic5.gif"
image3 = new Image(112,112)
image3.src = "http://www.blueidea.com/articleimg/bbsimg/reply5.gif"
image4 = new Image(112,112)
image4.src = "desk4.gif"


function loadCached(list)
{
var img = list.options[list.selectedIndex].value
document.thumbnail.src = eval(img + ".src")

}
</script>
</head>

<body>

<img src="desk1.gif" name="thumbnail" height=112 width=112>
<form>
<select name="cached" onChange="loadCached(this)">
<option value="image1">Bands
<option value="image2">clips
<option value="image3">Lamp
<option value="image4">Erasers
</select>
</form>
</body>
</html>
[/html]
[b]也许[/b]能解决问题。

skybot在上个帖子中说
  
你這樣做根本是語法錯誤............
可以改成這樣:

function zz(n)//纸张名和价格的函数
{
        var str;
        var id;
        var jia;
        var cc

                cc = form1[id+"[color=#00ff00]n[/color]"].value;
                //str = cc.split("£");
                //id = str[0];
                //jia  = str[1];
        document.form1[Yjia+"[color=#00ff00]n[/color]"].value=cc;//纸张的价格
}

P.S.你的javascript根柢打得不好。

同楼上。

个人不是很喜欢使用eval来获取元素,虽然也能够实现,因为获取元素的方式很多,而eval看起来并不是很直观,不利于维护。但是eval的速度与其他的比起来是否会更快我就不知道了。




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com