jQuery:加载禁用的选择菜单时显示html元素

时间:2015-07-02 09:59:33

标签: javascript jquery html forms

在我的应用程序中,用户可以编辑预订信息,但我不希望他们更改预订类型。所以我想加载一个页面,其中包含一个显示预订类型的选择菜单,但它也被禁用。我想要发生的是,如果禁用了选择菜单,则在页面加载时,将根据所选但禁用的类型显示相关元素。阅读文档这是我认为我需要的:

jQuery("#tipologia_piazzola").load(function(){
    alert("something");

    if (this.value == "mensile" && this.is(":disabled")) {
        jQuery(".both").show();
        jQuery(".mensile").show();
        jQuery(".giornaliera").hide();
    }

});

显然我已经将它插入就绪函数中,但是警报和html元素都没有出现。这是正确的方法吗?或者,我怎样才能达到目标?

1 个答案:

答案 0 :(得分:1)

您需要使用jQuery(this)而不是this来调用is(':disabled')函数,因为它需要jQuery对象而不是javascript对象。还可以使用document.ready,如下所示,以确保所有DOM元素都已就绪。

jQuery(document).ready(function(){
    var $this = jQuery('#tipologia_piazzola');
    if ($this.val() == "mensile" && $this.is(":disabled")) {
            jQuery(".both").show();
            jQuery(".mensile").show();
            jQuery(".giornaliera").hide();
        }
});

注意: - 如果您已将document.ready排除在外,请将其排除在现有document.ready

之上