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

时间:2015-02-23 14:01:41

标签: javascript model-view-controller pageload

这是我的Java Script功能: -

    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;}
  }

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

3 个答案:

答案 0 :(得分:0)

您可以在jquery api

中使用ready event
$( document ).ready(function() {
  ValidatefuneralDate();
});

相当于:

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

当DOM准备就绪时会调用它。

或者您可以使用页面加载事件

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

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

答案 1 :(得分:0)

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

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

或使用简写语法:

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

答案 2 :(得分:0)

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

window.onload = function() {
  init();
  doSomethingElse();
};