如何仅在特定时间段内显示按钮?

时间:2019-07-23 15:23:43

标签: javascript jquery asp.net asp.net-mvc

我正在ASP.NET网站上工作,我需要一个按钮仅在指定的开放时间窗口内提交付款。该按钮仅对12月1日至1月31日对客户可见,而在该年其余时间不可见。我该如何控制?

到目前为止,我已经草拟了一个非常简单的JS函数。

function TimePeriod() {
    var now = new DateTime();

    if (now.Month == 1 || now.Month == 12) {
        $("#payBtn").css('display', 'visible');
    }
    else {
        $("#payBtn").css('display', 'hidden');
    }
}

我不确定我是否在正确的轨道上/是否足够,所以任何建议都将有所帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

不确定new DateTime()是什么,所以我假设您的意思是new Date()。您还需要使用.getMonth()作为返回结果,将0返回到11。您可以使用.show().hide()

$(function() {
  function TimePeriod() {
    var now = new Date();

    if ((now.getMonth() + 1) == 1 || (now.getMonth() + 1) == 12) {
      $("#payBtn").show();
    } else {
      $("#payBtn").hide();
    }
  }

  TimePeriod();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div style="border: 1px solid #000;">
  <button id="payBtn">Pay</button>
  &nbsp;
</div>

作为参考,在CSS中,display可以使用blockhidden而不是visible

来源:https://www.w3schools.com/cssref/pr_class_display.asp

希望有帮助。