2012-09-08 74 views
0

我目前正在使用單選按鈕在JavaScript的幫助下單擊時顯示圖像。問題是,單擊單選按鈕時我沒有看到結果。下面的代碼顯示我正在使用一個函數,然後觸發即使點擊。有沒有代碼丟失?還是有更好的方法呢?這一個ExampleJavascript:單擊單選按鈕時的顯示圖像

謝謝

的Javascript

<script> 
    function check_value() { 
     function check_value(fieldvalue) { 
      switch (fieldvalue) { 
      case 1: 
       document.getElementById("imagedest").innerHTML = "<img src='images/bike1.jpg'>"; 
       break; 
      case 2: 
       document.getElementById("imagedest").innerHTML = "<img src='images/bike2.jpg'>"; 
       break; 
      case 3: 
       document.getElementById("imagedest").innerHTML = "<img src='images/bike3.jpg'>"; 
       break; 
      } 
     } 
</script> 

HTML

<form name="builder"> 
    <input type="radio" name="field" value="one" onclick='check_value(1)'/> KAWASAKI KX 450F<br /> 
    <input type="radio" name="field" value="two" onclick='check_value(2)'/> 2010 Yamaha Road Star S<br /> 
    <input type="radio" name="field" value="three" onclick='check_value(3)'/> Aprilia RSV4<br /> 
</form> 


<div id="imagedest"></div> 

回答

4

是什麼的代碼之前的額外function check_value() {的目的是什麼?它的目的似乎是阻止你的代碼工作,並因此提示你提出這個問題。

刪除它,一切都會好的。

2
function check_value() { 
    function check_value(fieldvalue) { 

這將是問題所在。取出第一線......你只想

function check_value(fieldvalue) { 

在未來,檢查控制檯的錯誤,或者把它放進jsbin.com,它可能給你的問題的詳細信息。對於你的代碼,它會告訴你什麼是錯的:

Line 2: function check_value(fieldvalue) { --- 'check_value' is already defined. 
Line 1: function check_value() { --- Unmatched '{'. 
2

個人......我會加載圖像,然後更改顯示設置,但如果你不想做..

未經檢驗的,在原處編輯:

<script> 
    function check_value(val) { // You have to pass a parameter 
     var imgs = ['images/bike1.jpg', 'images/bike2.jpg', 'images/bike3.jpg']; 
     var img = imgs[val]; 
     var el = document.getElementById("imgBox"); 
     if (img) { 
     el.src = img; 
     el.style.display = ""; 
     } 

    } 
</script> 

<img id="imgBox" src="#" style="display:none"> 
+0

+1謝謝您的回答。你是正確的上傳圖像。我試過你的方法,似乎大部分工作。問題:圖像與自行車的模型不匹配? – techAddict82

+0

然後,您必須調整HTML鏈接中的值或數組中的順序。無論哪種方式應該是一個簡單的修復。 –

相關問題