2011-12-08 31 views
0

我对jQuery比较新。我正在制作一个应用程序来创建一个接收NGO捐赠的小部件。使用jquery禁用/启用div

<div data-rle="content" id="save"> 
<label for="saveWidget">Save your Widget before posting in online:</label> 
<input type="submit" value="Save Widget" id="saveWidget" 
data-theme="b" data-inline="true" /> 
</div> 
<div data-rle="content" id="post"> 
<fieldset data-role="controlgroup"> 
    <legend>Select on option for posting your online:</legend> 
    <input type="radio" name="submit" id="html" value="hmtl" 
    checked="checked" /> <label for="html">Please provide 
    the HTML - I'll post it myself. <br>The HTML will be 
    displayed below.</label> 
      <input type="radio" name="submit" id="blog" value="blog" /> <label 
    for="blog">Go to Blogger</label> 
</fieldset> 
<input type="submit" value="Get HTML" id="submitWidget" 
data-theme="b" data-inline="true" /> 
</div> 

我的目标是让DIV在开始禁用id="post",当用户点击Save我想启用股利。我尝试使用$('#post').attr('disabled', true);,但它似乎不工作。该div没有被禁用 关于如何实现这一点的任何想法。

+0

你是什么意思 “禁用一个div”? 'div'只是一个容器。 – Oded

+1

一个不会简单地禁用'div'。您需要禁用'div'中的''元素。 – Bojangles

+0

Div元素没有内在的相互作用,所以禁用一个是没有意义的(所以他们没有这样的属性或属性)。 – Quentin

回答

1

也许是这样的:http://jsfiddle.net/MTQzD/

文档准备就绪时,禁用#post中的所有输入。同时在你的css中给你#post一个你选择的颜色(例如lightGray)。
然后点击“Save Widget”后,启用输入并移除#post div的颜色。

$(document).ready(function() { 
    $('input[type=radio]').attr('disabled', true); 
    $('#submitWidget').attr('disabled', true); 
}); 

$("#saveWidget").click(function() { 
    $('input[type=radio]').attr('disabled', false); 
    $('#submitWidget').attr('disabled', false); 
    $('#post').css("background-color", "#EAEAEA"); 
}); 
+0

谢谢克里斯。完全按照我的想法工作。 – Hozefa

+0

很高兴能帮到:) – CrisDeBlonde

1

你的意思是禁用div内的输入? 我不是jQuery,但我想它应该是这样的:$("#div > input").attr("disabled" , "true");

也许没有true声明。

0

此代码对我的作品

事业部

<span id="template_buttons"> 
    <button class="button">Button 1</button> 
    <button class="button">Button 2</button> 
    <button class="button">Button 3</button> 
</span> 

对于禁用所有对象

$("#template_buttons *").attr("disabled", "disabled").off('click'); 

对于启用的所有对象

$("#template_buttons *").attr("disabled", false); 

中的jsfiddle http://jsfiddle.net/muthupandiant/orv2d9k1/1/

0

$检查( '#div_name:输入')ATTR( '禁用',真正的); //禁用div输入元素

$('#div_pjt:input')。removeAttr('disabled'); //使DIV输入元素

此代码对我的作品

+0

有点上下文会很好。 –