1

javascript では、関数がいつでも変更できるようにするにはどうすればよいですか? 誰かがドロップダウンフォームから別のオプションを選択すると、選択したタイプの画像が表示されるようにしたいと思います。次のようなものです。

        newTexture(document.worktopForm.worktopColour.value);

    function newTexture() {
            var textureName = '<img src="'document.worktopForm.worktopColour.value'.jpg>';
            document.getElementById("texture").innerHTML += textureName;        
    }


        <form name="worktopForm">

        <label>Choose colour of Worktop (Please select one)</label><br/>
        <select name="worktopColour">
            <option value="none" selected></option>
            <option value="starGalaxy">Star Galaxy (££)</option>
            <option value="tanBrown">Tan Brown (£££)</option>
            <option value="coolColour">Cool Colour (££££)</option>
            <option value="nutYellow">Nut Yellow (£££££)</option>
        </select>

        <div id="texture"></div></form>
4

3 に答える 3

2

onchange次のイベントで任意の関数を呼び出すことができますselect

 <select id="worktopColour" onchange="newTexture();">


 function newTexture() {
        var textureName = document.getElementById("worktopColour");
        var  imagevalue=textureName.options[textureName.selectedIndex].value;        
 }

imagevalue変数を使用します。

于 2012-10-01T10:43:36.713 に答える
1

変更された関数:jsfiddle

 document.worktopForm.worktopColour.onchange =newTexture;

function newTexture() {

        var textureName = '<img src="' + this.value + '.jpg">';
        document.getElementById("texture").innerHTML += textureName;        
}​
于 2012-10-01T10:44:15.183 に答える
0

このようなもの?

<!DOCTYPE html>
<meta charset=UTF-8><!-- validates as html5 -->
<title>select from list</title>
<script>
function go () {
   var e = document.getElementById('worktopColour');
   document.getElementById('texture').innerHTML += 
   e.options[e.selectedIndex].value+'.jpg <br>';
}
</script>

<form>
<label>Choose colour of Worktop</label><br>
<select id=worktopColour onChange=go()>
   <option value=none selected=selected>
   <option value=starGalaxy>Star Galaxy (££)
   <option value=tanBrown>Tan Brown (£££)
   <option value=coolColour>Cool Colour (££££)
   <option value=nutYellow>Nut Yellow (£££££)
</select></form>
<div id=texture></div>
于 2012-10-01T12:04:52.747 に答える