2013-04-29 174 views
1

我一直在搜索幾個小時,並且無法獲得我代碼工作的一個方面。基於單選按鈕的隱藏/顯示點擊

我有一個div的兩個單選按鈕,我想要它,所以如果我選擇是,它會顯示一個滑塊,如果我選擇否,它會顯示另一個滑塊。

下面是html的:

<fieldset data-role="controlgroup"> 
    <legend> 
     <h>Do you like pie?</h> 
    </legend> 
    <input type="radio" name="do-you-like-pie" id="do-you-like-pie-yes" value="do-you-like-pie-yes" checked="checked" /> 
    <label for="do-you-like-pie-yes">Yes</label> 
    <input type="radio" name="do-you-like-pie" id="do-you-like-pie-no" value="do-you-like-pie-no" /> 
    <label for="do-you-like-pie-no">No</label> 
</fieldset> 
<!-- first slider --> 
<div data-role="fieldcontain" class="show-hide-like-pie-no"> 
    <label for="like-pie-yes-slider"> 
     <h>How much?</h> 
    </label> 
    <input type="range" name="like-pie-yes-slider" id="like-pie-yes-slider" value="25" min="0" max="100" data-highlight="true" /> 
</div> 
<!-- 2nd slider --> 
<div data-role="fieldcontain" class="show-hide-like-pie-yes"> 
    <label for="like-pie-no-slider"> 
     <h>How litle?</h> 
    </label> 
    <input type="range" name="like-pie-no-slider" id="like-pie-no-slider" value="100" min="0" max="200" data-highlight="true" /> 
</div> 

下面是.js文件:

function getAuto() { 
    if ($('#do-you-like-pie-yes').is(':checked')) { 
     return true; 
    } else { 
     return false; 
    } 
} 

//$('do-you-like-pie').on('click',function() { 
// if ($('#do-you-like-pie-yes').is(':checked')) { 
if (getAuto() == "true") { 
    $(".show-hide-like-pie-yes").show(); 
    $(".show-hide-like-pie-no").hide(); 
} else { 
    $(".show-hide-like-pie-yes").hide(); 
    $(".show-hide-like-pie-no").show(); 
} 
//}); 

任何幫助將不勝感激!

這裏是小提琴鏈接: http://jsfiddle.net/DjT5X/

謝謝!

親切的問候,

加里

編輯:與其他解決方案的麻煩是,他們沒有使用「如果」

+0

所以我有一個解決方案:http://jsfiddle.net/DjT5X/1/但是,必須有一種方法來整理這件事嗎?謝謝 – Gary 2013-04-29 14:36:41

回答

0

固定 - 只是用來改變(函數())

1

的getAuto()返回一個布爾真/假。 在你的榜樣,你的測試字符串 「true」

只需使用簡單的if(getAuto()),而不是

//$('do-you-like-pie').on('click',function() { 
// if ($('#do-you-like-pie-yes').is(':checked')) { 
if (getAuto()) { 
    $(".show-hide-like-pie-yes").show(); 
    $(".show-hide-like-pie-no").hide(); 
} else { 
    $(".show-hide-like-pie-yes").hide(); 
    $(".show-hide-like-pie-no").show(); 
} 
//}); 
+0

嗨,謝謝你的回覆。 不幸的是,這隻適用於「運行」,它不會改變,當我點擊。 希望是,當我點擊是,它顯示滑塊1,當我點擊否,它顯示滑塊2. 謝謝。 – Gary 2013-04-29 14:23:06

1

樣品例如隱藏單選按鈕上的按鈕點擊

$(document).ready(function() { 
    $("#do-you-like-pie-yes").click(function() { 
    $(".show-hide-like-pie-no").hide(); 
    }); 
    });