2013-10-28 7 views
1

Я создал код, который отображает информацию, нажимая на RADIO и другую информацию, нажав на другое RADIO.Javascript Hidden/Показать данные как вход Радио

Работает нормально, но когда я обновляю страницу, даже CHECKED, не отображается информация. Затем я должен снова щелкнуть RADIO, на котором уже была указана информация CHECKED.

Кто-нибудь знает, как решить?

Следуйте код ниже:

<script> 
// COLOR BG OR IMG BG 
$(document).ready(function(){ 
    $("input[name$='userBgOrImg']").click(function() { 
     var test = $(this).val(); 
     $("div.desc").hide(); 
     $("#"+test).show(); 
    }); 
}); 

</script> 

<style type="text/css"> 
    .desc { display: none; } 
</style> 


<div><label><input type="radio" name="userBgOrImg" value="1" <?php $id = $res_select["id"]; if ($userBgOrImg == 1) { echo "checked=\"checked\"";} else { echo "";}?>>Cor de Fundo</label></div> 
<div><label><input type="radio" name="userBgOrImg" value="2" <?php $id = $res_select["id"]; if ($userBgOrImg == 2) { echo "checked=\"checked\"";} else { echo "";}?>>Imagem de Fundo</label></div> 
<div> <br /> <br /> </div> 
<div id="1" class="desc"> 
    <label for="userBgBody">Cor do fundo do Site</label> 
    <input type="text" class="form-control bscp span12" value="<?php $id = $res_select["id"]; echo $userBgBody; ?>" id="userBgBody" name="userBgBody"> 
    <hr /> 
</div> 

<div id="2" class="desc"> 
    <label for="userImgBody">Imagem de fundo do site</label> 
    <input type="text" class="span12" name="userImgBody" id="userImgBody" placeholder="Imagem do fundo do site" value="<?php $id = $res_select["id"]; echo $userImgBody; ?>" /> 
    <hr /> 

    <label for="userImgBodyRepeat">Repetir imagem de fundo</label> 
    <span> <input type="radio" name="userImgBodyRepeat" value="repeat"> Sim</span> <span> <input type="radio" name="userImgBodyRepeat" value="no-repeat" selected="selected"> Não 
    <hr /> 
</div> 

Заранее спасибо за вашу помощь.

+0

прекрасно работает в этой скрипичной проверки out..http : //jsbin.com/OGoVoJI/6/edit – codebreaker

+0

@ Vitor de Sousa, ваш код не работает, потому что вы назначили клик для переключателя, как правило, к переключателю привязывается событие проверки. Попробуйте назначить событие проверки для переключателя и теста. надеюсь, что это работает. –

ответ

0

Попробуйте это,

$(document).ready(function(){ 
    var did=$("input[name$='userBgOrImg']:checked").val(); 
    if(did) 
    { 
     $("#"+did).show(); 
    } 
    // your remaining code 
});// document.ready function close 

Demo

+1

Работайте сейчас! \ o/ Спасибо! :) –

+0

Я не могу подтвердить, как правильно ответить дальше, но он отлично работает. :) –

+0

Я должен подождать еще минуту, чтобы принять как правильный ответ! –

0

Вы должны попробовать

$(document).ready(function(){ 
    $("input[name$='userBgOrImg']").change(function() { 
     var test = $(this).val(); 
     $("div.desc").hide(); 
     if(this.checked) { 
      $("#"+test).show(); 
     } 
    }).filter(':checked').change(); 
}); 
+0

Dont работал также :( –

+0

Рохан Кумар помогите мне тоже с правильным ответом. тоже спасибо, чтобы помочь мне :) –

0

Тр это ..

$(document).ready(function() { 
$("input[name$='userBgOrImg']").click(function() { 
    var value = $(this).val(); 
    if(value) 
{ 
    $("#"+value).show(); 
} 
}); 
Смежные вопросы