2012-07-26 110 views
5

jQuery的日期选择器允许您使用BeforeShowDay回调来突出显示日期。jQuery DatePicker BeforeShowDay第二个参数

是否有可能将第二个参数传递给该方法?

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

function selectedDay(date) { 

    // Do stuff 

    return [true, 'class_name']; 
} 

正如你所看到的,参数date自动传递到selectedDay方法,从而使我不确定如何传递第二个参数。

干杯。

回答

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

如果我理解正确的话,你可以创建另一个函数,并传递任何你想要的PARAMS:

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

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

嗨。我明白你的意思,但我仍然需要将'param'传递给'selectDay'函数。 – Jarrod 2012-07-26 02:44:01

0

你可以写返回日期

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

,然后

阵列功能
$(selector).datepicker({beforeShowDay: selectedDay}); 

只是一个想法,绝对不知道它是否工作

0

我采取了不是最好的做法来解决我的问题。我只是做了第二个参数来传递一个全局。它会暂时完成这项工作。

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

var my_param = x; 
function selectedDay(date) { 

    // Do stuff, use my_param 

    return [true, 'class_name']; 
} 
相关问题