0

所以我有这方面的基础知识,但它没有按照我想要的方式工作

问题:

当页面加载时,即使未选中该框,它也会显示 div。

编码:

<div class="element">
<label for="jtf">Jackpot Times: <a href='javascript:void(0);'
NAME='Help' title=' Help '
onClick=window.open('raffle.html','Ratting','width=520,height=570,0,status=0,');><font size='1'>[?]</font></a></label>
<table width='100%'><tr><td align='right'>Daily:</td><td align='left'><input type='checkbox' <?php echo $checkered ?> name='daily' id='daily' value='1' /></td><td align='right'>Weekly:</td><td align='left'><input type='checkbox' <?php echo $checkered1 ?> name='weekly' value='1' /></td><td align='right'>Monthly:</td><td align='left'><input type='checkbox' <?php echo $checkered2 ?> name='monthly' value='1' /></td><td align='right'>Yearly:</td><td align='left'><input type='checkbox' name='yearly' <?php echo $checkered3 ?> value='1' /></td></tr></table>
</div>
<div id='daily_x'>
<div class='element'>
<label for='daily_x'>Daily Jackpot Starting Pot:</label>
<input type='text' name='daily_x' value='<?php echo $rafde?>' />
</div>
</div>
<script>
$('#daily').change(function() {
    if(this.checked){
      $('#daily_x').show();
    }
    else{
      $('#daily_x').hide();
    }
});
</script>

当页面加载时,ID为daily的复选框未选中,但仍显示div。

我为选择框设置了类似的设置,但是能够添加$(document).ready(function()以在未选择某些内容时隐藏,但是在使用复选框时这似乎不起作用。

4

2 回答 2

4

首先,使用onready,onload()状态,触发变化,设置监听器后:

<div class='element'>
<label for='daily_x'>Daily Jackpot Starting Pot:</label>
<input type='text' name='daily_x' value='<?php echo $rafde?>' />
</div>
</div>
<script>
$(function() {
 $('#daily').change(function() {
     if($(this).attr('checked')){
       $('#daily_x').show();
     }
     else{
       $('#daily_x').hide();
     }
 });
 $('#daily').trigger('change');
});
</script>
于 2012-11-21T02:29:56.763 回答
3
if($(this).attr('checked')){
    $('#daily_x').show();
}else{
    $('#daily_x').hide();
}

如果您希望隐藏/显示 div “onload”,那么只需调用 .change() 函数

$('#daily').change(function() {
    if($(this).attr('checked')){
        $('#daily_x').show();
    }else{
        $('#daily_x').hide();
    }
});

$('#daily').change();
于 2012-11-21T02:28:40.713 回答