我正在使用下面的代碼更改顯示的圖像。當我向html添加表單標籤時,我只在IE中更改下拉列表時顯示'paint is undefined'的錯誤。我花了很多年尋找,並試圖找出它,但沒有運氣。有任何想法嗎? TKS添加表單標記時出現未定義錯誤
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script type="text/javascript">
function callAFunction(SelectBox)
{
var caption=[
'Default Image Caption',
'Caption1',
'Caption2',
'Caption3',
'Caption4',
'Caption5',
'Caption6',
'Caption7',
'Caption8',
'Caption9'],
bp='images/',
imgnum=8,
thumb=document.getElementById('thumb'),
description=document.getElementById('caption');
thumb.src=bp+'picture'+paint.value+vinyl.value+'.jpg';
description.innerHTML=caption[SelectBox.value];
}
</script>
</head>
<body>
<form>
<img src="images/picture1.jpg" alt="" id="thumb">
<div id="caption">Caption1</div>
<label>Change the Paint: </label>
<select id="paint" name="paint" onChange="callAFunction(this); return false;">
<option value="1">Image 1</option>
<option value="2">Image 2</option>
<option value="3">Image 3</option>
<option value="4">Image 4</option>
<option value="5">Image 5</option>
<option value="6">Image 6</option>
<option value="7">Image 7</option>
<option value="8">Image 8</option>
<option value="9">Image 9</option>
</select><br />
<label>Change the Vinyl: </label>
<select id="vinyl" name="vinyl" onChange="callAFunction(this); return false;">
<option value="1">Image 1</option>
<option value="2">Image 2</option>
<option value="3">Image 3</option>
<option value="4">Image 4</option>
<option value="5">Image 5</option>
<option value="6">Image 6</option>
<option value="7">Image 7</option>
<option value="8">Image 8</option>
<option value="9">Image 9</option>
</select>
</form>
</body>
</html>
你已經使用過'paint.value',但是你沒有定義它。請定義它並重試。 –
添加'paint = document.getElementById('paint');' –