JQuery .show() - 没有效果

时间:2014-01-06 19:33:38

标签: javascript jquery html css

我在这里看了几个使用.show()的例子,但我仍然无法让我的工作。我的目标是让div" gateInformation"当" gateNeededYes"按下单选按钮。到目前为止,div仍然隐藏着。如果有人能解释我出错的地方,我将非常感激! 这是代码: CSS:

#gateInformation {
    display: block;
}

JS:

/门信息

if($('#gateNeededYes').prop('checked')){
        $("#gateInformation").show("blind" , 1000);
    }

HTML:

盖茨需要:

            No <input type="radio" name="gateNeeded" id="gateNeededNo" />
            Yes <input type="radio" name="gateNeeded" id="gateNeededYes" />
            <div id="gateInformation" name="gateInformation">
                Gates Needed: 
                <select name="gateHeight" id="gateHeight">
                    <option value="select">Select Gate Height</option>
                    <option value="4fg">4 Ft. Gate</option>
                    <option value="6fg">6 Ft. Gate</option>
                    <option value="8fg">8 Ft. Gate</option>
                </select>
                Pool Spring and Latch: 
                <input type="checkbox" name="psl" id="psl">
            </div>

3 个答案:

答案 0 :(得分:5)

如果您要展示某些内容,则必须先隐藏

#gateInformation {
    display: none;
}

然后你需要一个事件处理程序

$('#gateNeededYes').on('change', function () {
    if (this.checked) {
        $("#gateInformation").show("blind", 1000);
    }
});

然后,您必须包含用于处理show()

的效果的jQuery UI

FIDDLE

答案 1 :(得分:2)

以防万一你使用旧的jQuery:在jQuery 1.5及更早版本中你必须使用.attr('checked')而不是.prop('checked')

修改

jQuery 1.5,而不是1.8

答案 2 :(得分:0)

如果您想在按下单选按钮后执行代码,那么您也可以尝试click事件:

$('#gateNeededYes').click(function () {