1

我有以下脚本可以正常工作:

$(".txtDate").datepicker( {
    changeMonth: true,
    changeYear: true,
    yearRange: "+0:+1",
    showButtonPanel: false,
    dateFormat: "dd/mm/yy",
    onSelect: function(dateText, obj){
        test_function( dateText );
    }
} );

$('.txtDate').datepicker( "setDate" , new Date() );

function test_function( strDate ) {
    alert( strDate );
}

datepicker启用 HTML 控件.txtDate,默认情况下在网页加载时显示今天的日期,.txtDate如果我从datepicker.

我的问题是,如何在页面加载时datepicker执行test_function,以便在页面加载时设置的警报中显示默认日期datepicker

警报test_function只是一个测试,看看何时datepicker执行其他功能,最终结果会复杂得多。

另外,我有一个基于小部件的网站,它允许人们一次在页面上添加许多相同的小部件,这意味着我将拥有许多.txtDate控件。所以我不能只得到 的值.txtDate,我需要根据 $(this) 找到最接近的值。

4

2 回答 2

1

您尝试test_function()在页面加载中调用此函数,因此您可以在页面加载中获取日期选择器默认值,例如,

<script type="text/javascript" language="javascript">
$(function(){
   $('.txtDate').datepicker( "setDate" , new Date() );     
   test_function();
});

function test_function() {
   alert( $("#txtDate").val() );
 }
</script>

您不需要将任何参数值传递给此 js 函数。

于 2012-11-01T15:49:22.767 回答
0

试试这个

 function addLoadEvent(func) {
       var oldonload = window.onload;
       if (typeof window.onload != 'function') {
         window.onload = func;
       } else {
         window.onload = function() {
           if (oldonload) {
             oldonload();
           }
           func();
         }
       }
       }

    addLoadEvent(incompleteForm);

    function incompleteForm()
    {
       alert( $("#txtDate").val() );
    }
于 2012-11-01T16:10:04.893 回答