jQuery的其他页面元素$( “#DIV”)后无效。节目()

问题描述:

我该怎么办。我在页面上有很多html元素。点击html按钮后,我想要的是,我的特殊div显示,但是,其他html无效。例如,textareas不可编辑,按钮不可点击。

感谢

算了说“SpecialDiv”还包含按钮,选择,文本域等他们必须“体健”。

你需要做一个独立的,透明的<div>覆盖整个页面。

你可能寻找jQuery UI DialogjqModal

+0

即会还需要一个黑客(不记得它叫什么)来处理的离奇方式''

+0

@Pointy:你指的是TH e'

+0

这是为什么downvoted? – SLaks 2010-03-09 15:21:46

$('#yourDiv').show(); 
$('input, textarea, button').attr('disabled', 'disabled'); 
+0

忘记“选择”! – Pointy 2010-03-09 14:56:22

嗯,这是一个有点模糊,但

function zap() { 
    $('#magicDiv').show(); 
    $('input, button, textarea, select').attr({disabled: true}); 
} 
function unzap() { 
    $('#magicDiv').hide(); 
    $('input, button, textarea, select').attr({disabled: false}); 
} 

现在,如果你需要担心其他事情可能禁止输入,你可以这样做:

function zap() { 
    $('#magicDiv').show(); 
    $('input, button, select, textarea').each(function(_, elem) { 
    if (!elem.disabled) { 
     $(elem).data('zapped', true).attr('disabled', true); 
    } 
    }); 
} 
function unzap() { 
    $('#magicDiv').hide(); 
    $('input, button, select, textarea').each(function(_, elem) { 
    if ($(elem).data('zapped')) { 
     $(elem).data('zapped', false).attr('disabled', false); 
    } 
    }); 
} 
+0

如果按钮以前被禁用,这仍然会重新启用。 – SLaks 2010-03-09 14:56:28

+0

是的,这是真的 - 我会解决它 – Pointy 2010-03-09 14:57:34

+0

对不起,我忘了告诉你,在magicDiv还包含按钮,选择,...等 – loviji 2010-03-09 15:00:42