-1

我的页面上有一组复选框。其中之一的代码:

<div>
            <label for="ViewAsWebpage">
                {{#if this.ViewAsWebpage}}
                    <input type="hidden" id="ViewAsWebpage" name="ViewAsWebpage" value="true"/> 
                    <input type="checkbox" class="enable-checkbox" checked /> 
                {{else}}
                    <input type="hidden" id="ViewAsWebpage" name="ViewAsWebpage" value="false"/> 
                    <input type="checkbox" class="enable-checkbox" /> 
                {{/if}}
                <span>View as Webpage</span>
            </label>
        </div> 

我正在尝试根据用户点击将值设置为真/假,然后希望在提交表单时发布该值,如下所示:

$('input.enable-checkbox').click(function (e) {

                    if ($('input.enable-checkbox').parent().attr("for") == "ViewAsWebpage") {
                        var checked = $('#ViewAsWebpage').is(":checked");
                        $('#ViewAsWebpage').attr("value", checked);

                    }  

是否有更好的方法通过识别页面上单击的复选框(有多个)将复选框值设置为 True/False?

4

2 回答 2

0

尝试这个

$('input.enable-checkbox').on('click', function (e) {
    $(this).closest('label').val(this.checked);   
})
于 2012-09-28T16:45:40.847 回答
0

首先,您应该为您的复选框本身提供 ID。然后:

$("#idCheckbox1").change(function(){
   if($("#idCheckbox1").attr('checked')){
       $("#ViewAsWebPage").val("true")
   }
}

$("#idCheckbox2").change(function(){
   if($("#idCheckbox2").attr('checked')){
       $("#ViewAsWebPage").val("false")
   }
}
于 2012-09-28T16:36:45.093 回答