我无法在jquery中设置一个MVC复选框

Sme*_*egs 3 javascript asp.net-mvc jquery asp.net-mvc-4

在MVC中,我正在使用帮助程序来创建一个这样的复选框

@Html.CheckBox("MDCCheckbox", true, new { @class = "LineCheckbox" })
@Html.Label("MDCCheckbox", "MDC")  
Run Code Online (Sandbox Code Playgroud)

没有什么花哨.

我希望能够(取消)检查jquery中的框.

我可以非常轻松地取消选中它,但我无法将其设置为已选中.这与MVC呈现html的方式有关,但我无法弄明白.

我知道我可以自己创建元素,但我想知道我做错了什么.

这就是将剃刀渲染成html的方式(使用匹配的输入元素将true/false传递给服务器).

<input checked="checked" class="LineCheckbox" id="MDCCheckbox" name="MDCCheckbox" type="checkbox" value="true" />
<input name="MDCCheckbox" type="hidden" value="false" />
<label for="MDCCheckbox">MDC</label> 
Run Code Online (Sandbox Code Playgroud)

我创造了一个小提琴,让它更容易玩和测试.我甚至无法让它在小提琴中工作.

小提琴

这是jquery

$(".check").click(function () {        
    $(".LineCheckbox").attr("checked", true);
});
$(".uncheck").click(function () {        
    $(".LineCheckbox").removeAttr("checked");
});
Run Code Online (Sandbox Code Playgroud)

A. *_*lff 9

使用.prop()设置属性检查代替:

$(".check").click(function () {        
    $(".LineCheckbox").prop("checked", true);
});
$(".uncheck").click(function () {        
    $(".LineCheckbox").prop("checked", false);
});
Run Code Online (Sandbox Code Playgroud)