如何根据复选框操作 Mvc4 自动填充日期



我目前正在 .net MVC4 中做一个项目,当在"编辑"表单中勾选复选框时,我需要用当前日期填充显示字段。

由于它是一个编辑表单复选框,可能已经被勾选了,我需要检查它是否在第一次被选中,然后我需要填充当前日期。


更新:

马特谢谢。我通过使用隐藏字段解决了这个问题。涉及的步骤:1. 将模型字段存储在编辑屏幕的隐藏字段中。 @Html.Hidden("hiddenDateField", Model.DateField) @Html.Hidden("hiddenCheckBox", Model.CheckBoxField)

  1. 然后使用JQuery我添加了以下逻辑。

$('#chkBox').on('click', function () { var myDate = new Date(); var displayDate = (myDate.getUTCDate()) + '/' +(myDate.getUTCMonth() + 1) + '/' + myDate.getUTCFullYear() + " " + myDate.getUTCHours() +":" + myDate.getUTCMinutes() +":"+myDate.getUTCSeconds();

    if ($('#chkBox').is(":checked")) {
        if ($('#hiddenCheckBox').val() == "False") {       // This condition is to check if the user is selecting checkbox for 1st time by comparing with received model data value.
            $('#lblDate').text(displayDate);
        } else {
            $('#lblDate').text($('#hiddenDateField').val());  // This condition is to restore the Date if user unticks  and Select Checkbox again.
        }
    }
    if (!$('#chkBox').is(":checked")) {  // This when user unticks the checkbox and I replaced the date to empty char.
          $('#lblDate').text("");
    }
}); 
不需要使用

ajax,只需使用 jquery。 没有您的代码,很难给出示例,因此您需要更改它以匹配您的代码

$(document).ready(function(){
    //this will check if checked on load and set the text box to now
    if($('.chkClass').is(":checked")){
        $('.txtClass').val($.now());
    }
    $('.chkClass').on('click', function(){
        //check again so it only sets the date if they check and not uncheck
        if($('.chkClass').is(":checked")){
            $('.txtClass').val($.now());
        }
    });
});

相关内容

  • 没有找到相关文章

最新更新