Изменить изображение, отображаемое с помощью JavaScript с помощью переключателей

0

У меня установлен мой сайт следующим образом:

<h1 class="testTitle"> Letter Height</h1>

<h2 class="testIns">Press the buttons to make it shorter or taller!</h2>  

<div id="testBox">

    <img src="images/height/heightMid.gif"> 

</div>

<form method="get" action="width.php" class="testAns" id="heightAns">
<input type="radio" name="height" value="short" onchange="ChangeDisplay();">-25%
<input type="radio" name="height" value="mid" onchange="ChangeDisplay();">normal
<input type="radio" name="height" value="tall" onchange="ChangeDisplay();">+25%

<br>

<h2 class="confirm">Does this look good?  If so, please click the "Submit" button.</h2>

<span class="submit"><input type="submit"></span>
</form>

И у меня есть функция JavaScript, которая должна менять изображение в зависимости от выбранного переключателя:

function ChangeDisplay(){
    switch(document.test.field.value){
       case "short":
         document.getElementById("testBox").innerHTML = "<img src='images/height/heightMinus25.gif'>";
         break;
       case "mid":
          document.getElementById("testBox").innerHTML = "<img src='images/height/heightMid.gif'>";
          break;
       case "tall":
          document.getElementById("testBox").innerHTML = "<img src='images/height/heightPlus25.gif'>";
          break;

    }
  }

Однако, когда я выбираю кнопки, дисплей не изменяется. Любая помощь будет принята с благодарностью.

  • 0
    Как вы выбираете "document.test.field.value"?
  • 0
    Могу ли я спросить, где вы получили бит «document.test.field.value»? Ваша форма не называется «тест», а ваша серия переключателей называется «высота».
Показать ещё 2 комментария
Теги:

3 ответа

0
Лучший ответ

Попробуйте изменить следующее:

onclick="ChangeDisplay(this.value);"

а также

function ChangeDisplay(val){
    switch(val){ ...
    ...
0

В вашем случае вы должны выбрать значение своей группы переключателей следующим образом:

document.forms [0].height.value

0

Другой способ - использовать JavaScript для изменения фонового изображения. Вот пример:

HTML

<div id="imgCont"></div><P>
<input type="radio" id="imgBtn" onclick="ClickMe();">Click Me

CSS

      #imgCont {
     background-image:  
      url('http://upload.wikimedia.org/wikipedia/commons/1/1b/Square_200x200.png');
      background-repeat: no-repeat;
    width: 200px;
  height: 200px;
 }

JAVASCRIPT

  function ClickMe () {
  if (document.getElementById("imgBtn").checked == true) {

document.getElementById("imgCont"). style.backgroundImage = "url (http://www.bizreport.com/2011/02/03/android-logo-200x200.jpg)"}

  }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню