BootStrap DatePicker NoConflict

时间:2013-08-29 10:02:42

标签: jquery twitter-bootstrap datepicker

根据文件:https://github.com/eternicode/bootstrap-datepicker#no-conflict

bootstrap datepicker现在可以使用noConflict:

var datepicker = $.fn.datepicker.noConflict();
$.fn.bootstrapDP = datepicker;    // give $().bootstrapDP the bootstrap-datepicker functionality

它说“给$()。bootstrapDP bootstrap-datepicker功能”,这是什么意思?这是否意味着我可以使用$("#object").bootstrapDP()代替$("#object").datepicker()

我在firefox中试过它(仅用于测试,实际上与任何js没有冲突),但是“date-choose”没有显示,并且没有出现错误(来自firebug),这很奇怪。

以下是我的代码:

HTML

<div class="input-append date" id="dp3" data-date-format="dd-mm-yyyy">
    <input class="span2" size="16" type="text"  readonly><span class="add-on"><i class="icon-th"></i></span>
</div>

JS

<script>
  $(function(){
    var datepicker = $.fn.datepicker.noConflict;
    $.fn.bootstrapDP = datepicker;  
    $("#dp3").bootstrapDP();    
  });
</script>

当我用$("#dp3").datepicker()替换脚本时,将显示“date-choose”。 谁能告诉我如何使用noConflict来引导datepicker?

3 个答案:

答案 0 :(得分:10)

你错过了noConflict功能上的parens。

代码:

$(function(){
    var datepicker = $.fn.datepicker.noConflict();
    $.fn.bootstrapDP = datepicker;  
    $("#dp3").bootstrapDP();    
});

工作演示:http://jsfiddle.net/IrvinDominin/faxyz/

答案 1 :(得分:0)

对于没有被接受的答案(例如我)帮助的任何人,请参见下文...

像这样使用data-api实例化,而不是使用jQuery初始化:

<input type="text" data-provide="datepicker" />

这使您可以使用Bootstrap日期选择器,而不必担心与jQuery UI的日期选择器冲突。

答案 2 :(得分:0)

可以从Jquery UI定制所需的窗口小部件,而不必使用Jquery UI的所有功能。

在这种情况下,您可以删除jquery datepicker并构建并使用新文件。

使用此jquery ui小部件构建器:https://jqueryui.com/download/