如何在MVC中调用页面加载时的javascript函数

问题描述 投票:0回答:3

这是我的Javascript功能: -

    function ValidatefuneralDate() {
    var today;
    var currentDate = new Date();
    var year = currentDate.getFullYear();
    var month = currentDate.getMonth() + 1;  
    var day = currentDate.getDate();

    if (window.location.href.indexOf("en-US") > -1) {
        today = month + '/' + day + '/' + year;
        var selectedDate = $("#Month option:selected").
        val() + '/' + $("#Day option:selected").text() + 
        '/' + $("#Year option:selected").text();
    }
    else {
        today = day + '/' + month + '/' + year;
        var selectedDate = $("#Day option:selected").
        text() + '/' + $("#Month option:selected").
        val() + '/' + $("#Year option:selected").text();
    }
    if ($("#Month option:selected").val()==2)
    {
        $("#Day option[value='31']").hide();
        $("#Day option[value='30']").hide();
        if ($("#Year option:selected").text() == 2016) {
            $("#Day option[value='29']").show();
        }
        else
        {
            $("#Day option[value='29']").hide();
        }
    }
    else if($("#Month option:selected").
    val() == 4 || $("#Month option:selected").
    val() == 6 || $("#Month option:selected").
    val() == 9 || $("#Month option:selected").val() == 11)
    {
        $("#Day option[value='29']").show();
        $("#Day option[value='30']").show();
        $("#Day option[value='31']").hide();
    }
    else
    {
        $("#Day option[value='31']").show();
    }
    if (selectedDate < today) {
        $("#lblFeneralDate").
        html('@Html.R(VirtualPath,"ValidatefuneralDate")');
        return false;
    }
    else { return true;}
  }

如何在浏览器上的页面加载时调用此函数?此功能应在页面加载时调用我该怎么做?函数如何与页面加载绑定?

javascript model-view-controller pageload
3个回答
0
投票

你可以在jquery api中使用ready event

$( document ).ready(function() {
  ValidatefuneralDate();
});

这相当于:

$(function() {
  ValidatefuneralDate();
});

这将在DOM准备好时调用。

或者你可以使用pageload事件

$(document).on("pageload",function(){
  ValidatefuneralDate();
});

在页面成功加载并插入DOM后触发pageload事件。


0
投票

您正在使用jQuery,所以只需使用标准的jQuery page ready方法:

$(document).ready(function() {
    ValidatefuneralDate();
})

或者使用简写语法:

$(function() {
    ValidatefuneralDate();
})

0
投票

您还可以使用纯JavaScript,如下所示:

window.onload = function() {
  init();
  doSomethingElse();
};
© www.soinside.com 2019 - 2024. All rights reserved.