如何为Datetime Picker文本框应用样式

时间:2014-01-09 10:08:27

标签: jquery css asp.net-mvc asp.net-mvc-3 razor

你好我的项目我必须为一个文本框应用样式,它将使用Jquery和css渲染Calender。我正在使用ASP.Net MVC3 Razor

这是我的文本框代码

<div class="col-lg-10" >@Html.EditorFor(model => model.DateOfBirth, new { @class = "form-control"  })

我的模板文字框,用脚本绑定

<input class="form-control" type="text" id="dp1" data-date-format="mm/dd/yy" value="02/16/12"></div>

我的问题是如何将以下样式应用于上面的文本框

  

type =“text”id =“dp1”data-date-format =“mm / dd / yy”value =“02/16/12”

脚本代码

/*==DATE PICKER==*/
             $('#dp1').datepicker({
                 format: 'mm-dd-yyyy'
             });
             $('#dp2').datepicker();
             $('#dpYears').datepicker();
             $('#dpMonths').datepicker();
         });

2 个答案:

答案 0 :(得分:1)

您可以为此创建自己的编辑器模板,并在需要的地方重复使用。

 @Html.EditorFor(m => m.DateOfBirth, "DatePicker")

然后Views/Shared/EditorTemplates/DatePicker.cshtml文件写下面的

@model DateTime?
@{
    String modelValue = "";


    if (Model.HasValue)
    {
        if (Model.Value != DateTime.MinValue)
        {
            modelValue = Model.Value.ToShortDateString();
        }
    }
}

    @Html.TextBox("", modelValue, new { @class = 'my-date-picker'})

然后你的CSS

.my-date-picker
{ 
  /* your styles */
}

主页中的Javascript或_layout(如果它用于更多页面)

$(document).ready(function(){

$('.my-date-picker').datepicker();

});

答案 1 :(得分:0)

您无法为EditorFor

设置课程

更改

@Html.EditorFor(model => model.DateOfBirth, new { @class = "form-control"  })

@Html.TextBoxFor(model => model.DateOfBirth, new { @class = "form-control"  })

添加类的其他方法可以在document.ready处理程序

中使用jquery
$('#dp1').addClass('form-control');