我需要检查一个检查箱的检查财产,并使用jQuery进行检查财产的操作。

例如,如果年龄检查框被检查,那么我需要显示一个文本框进入年龄,否则隐藏文本框。

但下列代码默认返回虚假:

如果($('#isAgeSelected').attr('checked')) { $("#txtAge").show(); } 其他 { $("#txtAge").hide(); } <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input type="checkbox" id="isAgeSelected"/> <div id="txtAge" style="display:none"> 年龄 已选择 </div>

如何成功查询已检查的房地产?


当前回答

这是一个不同的方法来做同样的事情:

$(document).ready(函数(){ $(#isAgeSelected').click(函数() { // $(#txtAge").toggle(this.checked); // 使用纯 CSS 选择器如果($(this.checked)) { alert('on check 1'); }; // 使用 jQuery's is() 方法如果($(this).is(':checked')) { alert('on checked 2'); }; // 使用 jQue

其他回答

试试这,

$('#isAgeSelected').click(function() {
    if(this.checked){
        $("#txtAge").show();
    } else{
        $("#txtAge").hide();
    } 
});

我在Firefox 9.0.1中确认了下列工作,以捕捉检查箱邮件的状态变更:

$("#mycheckbox").change(function() {
    var value = $(this).prop("checked") ? 'true' : 'false';                     
    alert(value);
});

这是一个不同的方法来做同样的事情:

$(document).ready(函数(){ $(#isAgeSelected').click(函数() { // $(#txtAge").toggle(this.checked); // 使用纯 CSS 选择器如果($(this.checked)) { alert('on check 1'); }; // 使用 jQuery's is() 方法如果($(this).is(':checked')) { alert('on checked 2'); }; // 使用 jQue

虽然您为您的问题提出了一个JavaScript解决方案(在检查时显示一个文本框),但这个问题只能通过CSS解决。

假设你有以下HTML:

<label for="show_textbox">Show Textbox</label>
<input id="show_textbox" type="checkbox" />
<input type="text" />

您可以使用以下 CSS 来实现所需的功能:

 #show_textbox:not(:checked) + input[type=text] {display:none;}

对于其他场景,您可能会考虑适当的CSS选择器。

这里有一个Fiddle来展示这种方法。

我进入了相同的问题,我有一个ASP.NET检查箱。

<asp:CheckBox ID="chkBox1" CssClass='cssChkBox1' runat="server" />

在 jQuery 代码中,我使用下面的选择器来检查检查检查箱是否已被检查,并且它似乎像一个魅力一样工作。

if ($("'.cssChkBox1 input[type=checkbox]'").is(':checked'))
{ ... } else { ... }

我相信你也可以使用 ID 而不是 CssClass,

if ($("'#cssChkBox1 input[type=checkbox]'").is(':checked'))
{ ... } else { ... }

我希望这能帮助你。