0

这可能已经在另一个线程中得到了回答,但我找不到解决方案......所以就这样吧。

我已经定义了一个带有标志的枚举:

 [Flags]
 public enum InfarctRelatedVessel
 {
     [Description("Left anterior descending")]
     LEFT_ANTERIOR_DESC = 1<<0,
     [Description("Right coronary")]
     RIGHT_CORONARY = 1<<1,
     [Description("Left circumflex")]
     LEFT_CIRCUMFLEX = 1<<2,
     [Description("Left main")]
     LEFT_MAIN = 1<<3,
     [Description("Other")]
     OTHER = 1<<4
 };

它被模型及其各自的助手使用。

[DisplayName("Infarct related vessel")]
[UIHint("FlagsEnum")]
public InfarctRelatedVessel MyInfarctRelatedVessel { get; set; }

观点比较简单。我显示了船只属性的复选框列表,div当检查“其他”的复选框时,我想显示一个隐藏的东西。

<div class="form-group">
    @Html.LabelFor(model => model.MyInfarctRelatedVessel, new { @class = "control-label col-md-2" })
    <div class="col-md-10">
        @Html.EditorFor(model => model.MyInfarctRelatedVessel)
        @Html.ValidationMessageFor(model => model.MyInfarctRelatedVessel)

        <input type="hidden" id="InfarctVessels" />
    </div>
</div>
<div class="well well-sm" id="DivOtherVessel">
    @Html.LabelFor(model => model.MyOtherInfarctRelatedVessel, new { @class = "control-label col-md-4" })
    <div class="col-md-8">
        @Html.EditorFor(model => model.MyOtherInfarctRelatedVessel)
        @Html.ValidationMessageFor(model => model.MyOtherInfarctRelatedVessel)
    </div>
</div>

我正在努力使用一个 jquery 脚本,该脚本将检测用户何时选中“其他”复选框并显示隐藏的div

想法?

4

2 回答 2

0

如果要检测“检查”,可以这样做:

$('#checkBox').click(function () {
    if ($('#checkBox:checked').val() == 'true') {
        $('#div').show();
    }
});
于 2014-04-10T01:40:27.310 回答
0

这应该满足您的要求:

$("input:checkbox[name='@Html.NameFor(m => m.MyOtherInfarctRelatedVessel)']").change(function(){
    var anyChecked = false;
    $("input:checkbox[name='@Html.NameFor(m => m.MyOtherInfarctRelatedVessel)']").each(function(){
        if($(this).is(":checked")) anyChecked = true;
    });
    if(anyChecked){
        // show hidden div
    }
});
于 2014-04-10T02:17:19.173 回答