2011-01-28 85 views
0

假设我有以下代码创建了两个单选按钮:Javascript和HTML - 的onclick

<li id="foli517"  class="  "> 
<label class="desc" id="shippingChoice" for="Field517_0"> 
    Shipping Options 
     </label> 
<div> 
<input id="shippingChoice" name="Field517" type="hidden" value="" /> 
    <span> 
<input id="shipping1"  name="Field517"   type="radio"  class="field radio"   value="$2.00 Shipping Fee"  tabindex="13"      checked="checked"      /> 
<label class="choice" for="Field517_0"  > 
    $2.00 Shipping Fee</label> 
    </span> 
    <span> 
<input id="Field517_1"  name="Field517"   type="radio"  class="field radio"   value="I will pick up the items (free shipping)"  tabindex="14"        /> 
<label class="choice" for="Field517_1"  > 
    I will pick up the items (free shipping)</label> 
    </span> 
    </div> 
</li> 

我将如何实现一个javascript函数的onclick其更新ID为“mySpan”的跨度内的HTML与单击第二个单选按钮时为“FREE”,否则为“NOT FREE”?

document.getElementById(WHAT GOES HERE).onclick = function() { 
    //what goes here? 
}; 
+1

请问您可以改进代码格式? – 2011-01-28 01:26:59

回答

0
document.getElementById('foli517').onchange = function(e) { 
    var e = e || event; 
    var target = e.target || e.srcElement; 
    var span = document.getElementById('mySpan'); 
    var span2 = document.getElementById('mySpan2'); 

    if (target.type === "radio") { 
     span.innerHTML = (target.id === "Field517_1") ? "FREE" : "NOT FREE"; 
    } 
    if (target.type === "checkbox") { 
     span2.innerHTML = "Is it checked? " + target.checked; 
    } 
}; 

例子:http://jsfiddle.net/pEYnm/2/

0

我会加onclick =“setSpan('FREE');”和onclick =“setSpan('NOT FREE');”到相应单选按钮的HTML,然后添加一个javascript函数,如下所示设置跨度的HTML。

function setSpan(text) { 
    document.getElementById('mySpan').innerHTML = text; 
} 
+0

这样?: <输入的ID = “Field517_1” \t \t名称= “Field517” \t \t类型= “无线电” \t \t类= “场无线电” \t \t值= “我将拿起项目(免费送货)” \t \t tabindex =“14”\t \t \t onclick =“setShippingSpan('$ 0.00');” \t \t \t \t \t /> – CodeGuy 2011-01-28 01:28:42

+0

正是。我认为这比添加onEvent处理程序等更容易。 – christophmccann 2011-01-28 01:29:55