2012-04-20 15 views
10

için bir datepicker almak için nasıl bir tarih sahadan aşağıda Verilenbenim MVC3 jilet sayfada Html.Editorfor

@Html.EditorFor(model => model.Member.Dob) 

var ben Doğum alanının tarihi bir datepicker almaya çalışıyorum koddur. Ben hatayı alıyorum bu sayfayı çalıştırdığınızda

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 
<script type="text/javascript"> 
     $(document).ready(function() { 
      debugger; 
      $("#Member_Dob").datepicker(); 
     }); 
    </script> 

Ama

Microsoft JScript runtime error: Object doesn't support property or method 'datepicker' 

bana sayfasına datepicker eklemek için bir yol bulmak yardım edin

+0

html ... – xandercoded

cevap

19

Sen bir EditorTemplate oluşturmanız gerekir senin Görünümler \ Paylaşılan \ EditorTemplate klasörü. DateTime.cshtml olarak adlandırın. aşağıdaki gibi

@model System.DateTime? 
<div class="editor-label"> 
    @Html.Label("") 
</div> 
<div class="editor-field"> 
    @Html.TextBox("", String.Format("{0:MM/dd/yyyy}",(Model == DateTime.MinValue)? null : Model), new { @class="text"}) 
</div> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#@ViewData.ModelMetadata.PropertyName").datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      dateFormat: 'mm/dd/yy', 
      gotoCurrent: true 
     }); 
    }); 
</script> 

kullanın: Aşağıdaki gibi görünmelidir

@Html.EditorFor(model => model.Member.Dob) 
+0

nasıl söyle lütfen edebilirsiniz lütfen render datetime.cshtml görünümünde çok teşekkürler – Ammar

+1

'@ ViewData.ModelMetadata.PropertyName' yerine' @ Html.IdForModel() 'işlevini kullanırsanız, yuvalanmış özellikler üzerinde çalışır. Bakınız: http://stackoverflow.com/questions/15654716/how-do-i-get-the-the-fully-qualified-member-name-in-an-editortemplate –