繁体   English   中英

Javascript图像交换未激活功能

[英]Javascript Image Swap not activating function

我不是一名JavaScript编码人员,所以我正在寻求可以帮助我解决任何问题的任何人的建议,主要问题是我正在尝试交换图像,以便可以通过选择一个来选择它们。单选按钮。

<script language="JavaScript">
function changeImage(newImage)
{
    if document[imageName].src = eval(newImage + ".src");
}
var img00700000232 = new Image();
img00700000232.src = "/2/00700000232.jpg";
var img00700000263 = new Image();
img00700000263.src = "/2/00700000263.jpg";
var img00700000270 = new Image();
img00700000270.src = "/2/00700000270.jpg";
var img00700000133 = new Image();
img00700000133.src = "images/TempImage.png";
var img00700000164 = new Image();
img00700000164.src = "images/TempImage.png";
var img00700000140 = new Image();
img00700000140.src = "images/TempImage.png";
var img00700000157 = new Image();
img00700000157.src = "images/TempImage.png";
</script>



</head><body>
<form name="test">
<input name="field" type="radio" value="00700000232" onchange="changeImage('img00700000232');">Prod1</input>
<br/>
<input name="field" type="radio" value="00700000263" onchange="changeImage('img00700000263');">Prod2</input>
<br/>
<input name="field" type="radio" value="00700000270" onchange="changeImage('img00700000270');">Prod3</input>
<br/>
<input name="field" type="radio" value="00700000133" onchange="changeImage('img00700000133');">Prod4</input>
<br/>
<input name="field" type="radio" value="00700000164" onchange="changeImage('img00700000164');">Prod5</input>
<br/>
<input name="field" type="radio" value="00700000140" onchange="changeImage('img00700000140');">Prod6</input>
<br/>
<input name="field" type="radio" value="00700000157" onchange="changeImage('img00700000157');">Prod7</input>
<br/>
</form>
<img name="image_name" src="images/TempImage.png" />

这是从ASP Classic生成的代码,因此代码是在服务器端生成的,因此不确定我的代码是否有问题,或者我的代码是否有问题,我们将不胜感激。

谢谢布拉德

您有语法错误:

if document[imageName].src = eval(newImage + ".src");

应该:

if( document["image_name"])
  document["image_name"].src = eval(newImage + ".src");

编辑:

不过,获得“ image_name” DOM元素的更好方法是将“ name”属性更改为“ id”,而改用document.getElementById。

所以,看起来像这样:

<img id="image_name" src="images/TempImage.png" />

function changeImage(newImage) 
{
  var imgEle = document.getElementById("image_name");
  if (imgEle){
      imgEle.src = eval(newImage + ".src");
  }
}

另外,您不必在这里使用eval。 您可以根据需要在Anchor标签中引用图像变量

所以改变这个

<input name="field" type="radio" value="00700000164" onchange="changeImage('img00700000164');">Prod5</input>

对此

产品5

然后您将不得不从中更改功能

function changeImage(newImage) 
{
  var imgEle = document.getElementById("image_name");
  if (imgEle && newImage){
      imgEle.src = newImage.src;
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM