2 つのドロップダウン ボックスを使用して画像を変更しようとしています。私は jquery/javascript に関しては完全な初心者なので、正しい方向への微調整であっても、少し助けが得られるかどうか疑問に思っていました。
ここに問題があります。張り地の色の選択と塗装の色の選択が必要です。どちらも同じ商品に表示されるため、ドロップダウン ボックスが 2 つあると理想的です。
私がこれまでに持っているコードは次のとおりです。
window.onload=function()
{
var caption=['Default Image Caption',
'Caption1',
'Caption2',
'Caption3',
'Caption4',
'Caption5',
'Caption6',
'Caption7',
'Caption8',
'Caption9'], // This will be your images caption
bp='images/', //base url of your images
imgnum=8, //Number of your images. This should match on your comboboxes options.
thumb=document.getElementById('thumb'), //id of your image that will be changing
description=document.getElementById('caption'), //id of your caption
combobox=document.getElementById('paint'); // id of your combobox.
combobox=document.getElementById('vinyl');
combobox.onchange=function()
{
thumb.src=bp+'Picture'+this.value+name+'.jpg';
description.innerHTML=caption[this.value];
}
}
HTMLは
<label>Change the Paint: </label>
<select id="paint">
<option>Change Picture</option>
<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">
<option>Change Picture</option>
<option Name="1">Image 1</option>
<option Name="2">Image 2</option>
<option Name="3">Image 3</option>
<option Name="4">Image 4</option>
<option Name="5">Image 5</option>
<option Name="6">Image 6</option>
<option Name="7">Image 7</option>
<option Name="8">Image 8</option>
<option Name="9">Image 9</option>
</select>
さて、以下の親切な人々の助けを借りて、私はこれを解決しました:
<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>
<img src="/images/picture1.jpg" alt="" id="thumb" />
<label>Change the Paint: </label>
<select id="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" 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>
助けてくれて本当にありがとうございます!