2

我有一个显示表中的值的 WebGrid 和一个编辑按钮。当用户单击此按钮时,会弹出一个表单或对话框表单,并使用我之前提到的同一个表中的值填充它。

我已经设法格式化日期值,现在有兴趣格式化我的表中的布尔值(true/false)以显示在复选框中。目前它显示为一个文本框,值为真或假。

以下是我的部分代码:

 $('#dialog-form2-edit').dialog(
            { 
//dialog form code .. this is fine

 $.getJSON('/Methods/GetCertificate/' + $(this).attr('id'), function (data)
                {   var certificate = data;
                    $('#edit-paid').val(certificate.Paid);
                    $('#edit-mark').val(certificate.Mark);
                    var date = new Date(parseInt(certificate.MarkDate.substr(6)));
                    var year = date.getFullYear();
                    var month = date.getMonth() + 1;
                    var day = date.getDate();
                    $('#edit-markdate').val(year + '-' + month + '-' + day);
                    $('#edit-markdate').datepicker({ dateFormat: 'yy-mm-dd' });

下面是我的html的一部分

<div id="dialog-form2-edit" title="Edit Certificate">
        <form id="edit-certificate-form" action="@Href("~/Methods/UpdateCertificate")">
            <div class="row">
                <span class="label"><label for="markdate">Mark Date :</label></span>
                <input type="text" name="markdate" id="edit-markdate" size="20"/>
            </div>
           <div class="row">
                <span class="label"><label for="mark">Mark :</label></span>
                <input type=text" name="mark" id="edit-mark" size="15"/>
            </div>

Mark 和 Paid 的值是布尔值。现在我打算将类型更改为文本,并且需要帮助将布尔值格式化为复选框。

4

2 回答 2

2

如果你有一个服务器端的 bool 值,你可以使用Web Pages 2 中的条件属性来管理复选框。checked您使用 Razor 为复选框的属性提供布尔值:

@{ var myBool = true; }

<input type="checkbox" name="mark" id="mark" checked="@myBool" />

如果 bool 是true,checked="checked"被渲染。如果是false,则根本不呈现选中的属性。

于 2013-03-06T13:49:57.973 回答
0

使用此代码在复选框中显示您的布尔值。

$.getJSON('/Methods/GetCertificate/' + $(this).attr('id'), function (data)
                {
var certificate = data;
if(certificate.Pass == true){
     $('#edit-pass').attr('checked', 'checked')} 
 else {$('#edit-pass').removeAttr('checked', 'checked')};
// your other json data
})

removeAttr 是必要的,因为我使用的是 jquery-1.4.2.min.js。测试和它的工作

于 2013-03-08T12:15:22.193 回答