5

jQueryのdatepickerを使用すると、BeforeShowDayコールバックを使用して日付を強調表示できます。

2番目のパラメーターをメソッドに渡すことは可能ですか?

$(selector).datepicker({beforeShowDay: selectedDay});   

function selectedDay(date) {

    // Do stuff

    return [true, 'class_name'];
}

ご覧のとおり、パラメーターdateは自動的にselectedDayメソッドに渡されるため、2番目のパラメーターを渡す方法がわかりません。

乾杯。

4

4 に答える 4

16
function selectedDay(date, param ) {
     // Do stuff with param
     return [true, ''];
}

function doStuff(){
    var param = "param_to_pass";
    $(selector).datepicker({
        beforeShowDay: function (date){
            return selectedDay(date, param );
        }
    }); 
}  
于 2012-11-22T14:30:31.190 に答える
0

私が正しく理解していれば、別の関数を作成して、必要なパラメータを渡すことができます。

function foo (param) { ... }
function selectedDay (date) {
  foo(param);
  return [true, 'class_name'];
}

$(selector).datepicker({beforeShowDay: selectedDay});   
于 2012-07-26T00:48:58.700 に答える
0

日付の配列を返す関数を書くことができます

function selectedDay(date1,date2) {
// your code
return dates[];
}

その後

$(selector).datepicker({beforeShowDay: selectedDay});  

ただのアイデア、それが機能するかどうかは絶対にわかりません

于 2012-07-26T06:48:08.710 に答える
0

私は自分の問題を解決するためにベストプラクティスではないことに頼りました。グローバルを渡すために2番目のパラメーターを作成しただけです。とりあえずその仕事をします。

$(selector).datepicker({beforeShowDay: selectedDay});   

var my_param = x;
function selectedDay(date) {

    // Do stuff, use my_param

    return [true, 'class_name'];
}
于 2012-07-26T22:16:23.367 に答える