2013-08-02 326 views
0

我有我創建了需要更改的基礎上選定值等jQuery的標籤值和輸入分組

我知道我該得太多地獄的這個值的形式。

<div> 
    <span align="right">Skill 1:</span>&nbsp;&nbsp;&nbsp;&nbsp; 
    <span class="amt" name="s_Skill1">3</span>&nbsp;&nbsp; 
    <input name="i_Skill1" type="checkbox" /> 
</div> 

所以這個特殊的技能花費3點,但如果其他複選框之一被選中,它只有1點。我遇到了一些問題,以確定什麼時候被檢查,與改變價值。

if ($("#i_Skill1").is(':checked')) { 
      alert("changing radio button"); 
      $("#s_Skill1").text("0"); 
     } 

看來我不得不跳過大量的箍,就像我應該能夠改變值並確定我想要/需要改變的東西。

這裏有一個小提琴 - http://jsfiddle.net/mattcushing/K5szE/31/是啊,我知道,這是龍與地下城,但它的東西,兒子問了,我想這會是一個很好的進軍jQuery的:)

回答

1

#id是id選擇,您必須將name更改爲id。或者有多個div,你最好使用class

<div> 
    <span align="right">Skill 1:</span>&nbsp;&nbsp;&nbsp;&nbsp; 
    <span class="amt" name="s_Skill1" class="s_Skill">3</span>&nbsp;&nbsp; 
    <input name="i_Skill1" class="i_Skill" type="checkbox" /> 
</div> 

然後:由

$('.i_Skill').each(function() { 
    if ($(this).is(':checked')) { 
    $(this).siblings('.s_Skill').text('0'); 
    } 
}); 
0

你應該引用的元素name,而不是作爲id他們沒有一個在這種情況下指定。

if ($('span[name="i_Skill1"]').is(':checked')) { 
    alert("changing radio button"); 
    $('input[name="s_Skill1"]').text("0"); 
}