将JS函数分配给Bootstrap-Datepicker的动态ID

时间:2014-03-06 14:06:40

标签: javascript jquery asp.net-mvc twitter-bootstrap datepicker

我只需要在用户选择日期选择器时显示月份和年份。我已经按照例子试图找到一个问题,但它似乎无法正常工作。有人可以帮忙吗? cshtml文件

<div class=" accordion" id="accordion">
    <i class="icon-plus-sign app-icon-orange icon-2x" style="cursor:pointer" id="btnAddTierGroup"></i> Add new date range
    @*Create a panel for each time period*@
    @for (var i = 0; i < Model.Periods.Count; i++)
    { @Html.EditorFor(x => x.Periods[i], "TimePeriodTiers")  }
</div>  

JS(对于那些不熟悉bootstrap的人来说,minViewMode:1是几个月)

$(document).ready(function () {
     $('[id^="Periods"]').datepicker({
            format: "mm/dd/yyyy",
            minViewMode: 1
        });
    })

修改 我发现我有两个问题。一个固定,一个仍然存在。 1。选择器ID ^ =“期间”附加到太多对象。 修正使用'id $ = BeginDate'所以它只抓取我需要的东西。 2。 JS中有一个函数阻止用户选择超过其他层的结束日期。这两种情况如下:     该功能有效,但允许用户选择日期

<script type="text/javascript">
var MaxTierCount = 25;
var MaxRate = @ViewBag.RateNotification

  SetUpTableSorter();

$('[id$=BeginDate]').ready(function () {
    $('[id$=BeginDate]').datepicker({
        format: "mm/dd/yyyy",
        startView: "months",
        minViewMode: 1
    });
})

    setupDateRanges($('#accordion'));

场景2:用户无法选回日期,但该功能不起作用:

<script type="text/javascript">
var MaxTierCount = 25;
var MaxRate = @ViewBag.RateNotification

SetUpTableSorter();
setupDateRanges($('#accordion'));


$('[id$=BeginDate]').ready(function () {
    $('[id$=BeginDate]').datepicker({
        format: "mm/dd/yyyy",
        startView: "months",
        minViewMode: 1
    });
})

任何帮助?

0 个答案:

没有答案