在隐藏文本字段时尝试将attr设置为禁用?

时间:2014-10-02 14:02:54

标签: jquery hidden-field

我正在使用带有表单的jquery-interdepencies库,我喜欢隐藏的文本字段和/或文本字段,没有值在提交时不被发送/处理。要做到这一点,我必须将disabled设置为true

$('#testform :input:hidden').attr('disabled', true);

我猜jquery-interdepencies lib阻止了这一点,但我无法理解如何解决这个问题。我认为jquery -interdepenpen将输入字段设置为display:none

btw:将隐藏或空文本字段发送到表单处理程序

的重要性

jqyery lib link

1 个答案:

答案 0 :(得分:1)

根据此插件的文档,您可以在显示或隐藏元素时添加回调。所以这样的事情会起作用:

var cfg = {
    hide: function(elem) {
        elem.hide();
        elem.find('input').attr('disabled','disabled');
    },
    show: function(elem) {
        elem.show();
        elem.find('input').attr('disabled',false);
    }
};

// Make the ruleset effective on the whole page
ruleset.install(cfg);

问题:当我对此进行测试时,我找到了bug in the plugin which I have raised on github

如果您愿意,可以从this fiddle复制/粘贴整个固定插件。它演示了隐藏时如何禁用元素。