jQuery UI datepicker绑定

问题描述:

我是新来的JavaScript和JQuery的概念,我只是想有一个datepicker获取日期范围。我有js和jsp有两个字段,分别为:“和”from“,作为单独的文件,我将jsp页面中的js文件与数据绑定绑定在一起。但是我想知道如何调用这个方法日期选择器),当我点击文本框,并获得其选择的值(开始和结束日期)从VAR日期? 在JQuery的网站给出的函数是jQuery UI datepicker绑定

$(function() {  

var dates = $("#from, #to").datepicker({ 
      defaultDate: "+1w", 
      changeMonth: true, 
      numberOfMonths: 3, 
      onSelect: function(selectedDate) { 
       var option = this.id == "from" ? "minDate" : "maxDate", 
        instance = $(this).data("datepicker"), 
        date = $.datepicker.parseDate(
         instance.settings.dateFormat || 
         $.datepicker._defaults.dateFormat, 
         selectedDate, instance.settings); 
       dates.not(this).datepicker("option", option, date); 
      } 
     }); 
    }); 

谢谢您输入,是的,我在jsp文件中有确切的id,我在另外一个js文件中有脚本作为模型,我用jsp中的data-bind绑定了模型,并且像前面提到的那样添加了脚本,但是方法根本不叫,所以我改变了jsp为

<label for="from">From</label> 
<input type="text" id="from" name="from" /> 
<label for="to">to</label> 
<input type="text" id="to" name="to"/> 

和我修改了下面的函数,我在两个文本字段的click事件上调用了calender方法,该方法被调用,但是我无法从中获取选定的日期,不知道如何从var日期获得。我需要获得从日期在ko.observal()和结束日期too.Highly你并欣赏帮助

calender: function(){ 
console.log("in calender"); 
var dates = $("#from, #to").datepicker({ 
defaultDate: new Date(), 
changeMonth: true, 
numberOfMonths: 1, 
onSelect: function(selectedDate) { 
var option = this.id == "from" ? "minDate" : "maxDate", 
instance = $(this).data("datepicker"), 
date = $.datepicker.parseDate(
instance.settings.dateFormat || 
$.datepicker._defaults.dateFormat, 
selectedDate, instance.settings); 
dates.not(this).datepicker("option", option, date); 
} 
}); 
}, 

#from#to是文本框的ID。如果你在你的代码下面将autmatically显示日期选择器,当你点击里面的文本框之一:

HTML

<label for="from">From</label> 
<input type="text" id="from" name="from"/> 
<label for="to">to</label> 
<input type="text" id="to" name="to"/> 

的Javascript

$(function() { 
    var dates = $("#from, #to").datepicker({ 
      defaultDate: "+1w", 
      changeMonth: true, 
      numberOfMonths: 3, 
      onSelect: function(selectedDate) { 
       var option = this.id == "from" ? "minDate" : "maxDate", 
        instance = $(this).data("datepicker"), 
        date = $.datepicker.parseDate(
         instance.settings.dateFormat || 
         $.datepicker._defaults.dateFormat, 
         selectedDate, instance.settings); 
       dates.not(this).datepicker("option", option, date); 
      } 
     }); 
    }); 

你做不必做任何事情,因为jQuery负责其余的事情。没有看到你的HTML和没有更多的信息,我会假设你的ID不匹配。

+0

@Mercy这是否解决了您的问题? – 2012-04-05 17:31:56