2016-06-07 84 views
0

這是我的第一個角度js網站,所以請原諒我的無知。angular ui.boostrap popup datepicker date-disabled not working

我已經添加了一個ui.boostrap popup datepicker到我的頁面,它完美的工作,除非它出現dateDisabled方法永遠不會被擊中。

我的標記如下所示:

<input id="inputWeekEnding" 
     type="text" 
     class="form-control" 
     uib-datepicker-popup="mediumDate" 
     ng-model="vm.weekEnding" 
     is-open="vm.weekEndingOpen.opened" 
     ng-required="true" 
     close-text="Close" 
     date-options="vm.dateOptions" 
     ng-change="vm.weekEndingChanged()"/> 

和我的控制器:

vm.dateOptions = { 
     dateDisabled: function (data) { 
      var date = data.date, 
       mode = data.mode; 
      return (mode === 'day' && (date.getDay() !== 0)); 
     } 
    }; 

我甚至嘗試硬編碼迴歸真實,仍然沒有日期被禁用。我已經看到了這項工作的各種不同的強盜,所以我知道它的作品。如上所述,我的dateDisabled函數永遠不會受到影響。我假設日曆上的其他方法可以被擊中,例如vm.weekEndingOpen.openedvm.weekEndingChanged()

我想知道我是否忘記添加腳本文件。我的腳本如下所示:

<!-- Library Scripts --> 
    <script src="scripts/angular.js"></script> 
    <script src="Scripts/angular-resource.js"></script> 
    <script src="Scripts/angular-ui-router.js"></script> 
    <script src="Scripts/angular-animate.js"></script> 
    <script src="Scripts/jquery-1.9.1.min.js"></script> 
    <script src="Scripts/bootstrap.min.js"></script> 
    <script src="Scripts/angular-ui/ui-bootstrap-tpls.min.js"></script> 

當我問一個datepicker問題,我注意到在其他國家人民plunkers他們的日期選擇器看起來好一點,像日曆有更多的陰影,也許它是我正在使用的版本。此外,我一週的日子沒有顯示,他們在那裏,但他們不顯示,因爲我有一個白色的背景和文字是白色的。

我的圖書館版本如下:

<package id="Angular.UI.Bootstrap" version="1.3.3" targetFramework="net452" /> 
    <package id="AngularJS.Animate" version="1.5.5" targetFramework="net452" /> 
    <package id="AngularJS.Core" version="1.5.5" targetFramework="net452" /> 
    <package id="AngularJS.Resource" version="1.5.5" targetFramework="net452" /> 
    <package id="bootstrap" version="3.3.6" targetFramework="net452" /> 
    <package id="jQuery" version="1.9.1" targetFramework="net452" /> 

不知道這是否是相關的,但我越來越沒得找圖標也: - http://localhost/TimeSheet.WebSite/fonts/glyphicons-halflings-regular.woff2 - http://localhost/TimeSheet.WebSite/fonts/glyphicons-halflings-regular.woff

任何幫助將是非常讚賞。

回答

2

datepicker沒有禁用屬性。您應該使用日期選擇器選項:

<input datepicker-options="dateOptions" ... > 

$scope.dateOptions = { 
     dateDisabled: function (data) { 
      var date = data.date, 
      mode = data.mode; 
      return mode === 'day' && (date.getDay() === 0 || date.getDay() === 6); 
     } 
}; 

閱讀文檔:https://angular-ui.github.io/bootstrap/#/datepickerPopup

+0

感謝@Roman,可惜我已經試過這個,所以我有什麼你和我的方法仍然沒有被擊中。 – D34th

+0

我已將我的帖子編輯爲您建議的內容以及文檔。 – D34th

+0

感謝@羅曼,我正是按照你(和doco)的建議來工作的。我已將你的標記標記爲正確的答案,但它不會公開顯示,因爲我的聲望尚不夠高。 – D34th