首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery DatePicker未与MVC3 C#一起显示

jQuery DatePicker未与MVC3 C#一起显示
EN

Stack Overflow用户
提问于 2012-08-01 19:42:43
回答 3查看 775关注 0票数 1

编辑:正在处理中。刚把EditorFor改成了TextBox

我刚刚开始在C#中使用MVC3。我偶然发现了这个问题。

我遵循了一些向MVC3项目添加日期选择器功能的教程,但是日期选择器没有显示在我的web项目中。这就是我所拥有的:

在我的_Layout.chtml文件中,我包含了所需的jQuery依赖文件:

代码语言:javascript
复制
<link href="@Url.Content("~/Content/themes/base/jquery.ui.core.css")" 
    rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/themes/base/jquery.ui.datepicker.css")" 
    rel="stylesheet"  type="text/css" />
<link href="@Url.Content("~/Content/themes/base/jquery.ui.theme.css")" 
    rel="stylesheet" type="text/css" />

<script src="@Url.Content("~/Scripts/jquery.ui.core.min.js")" 
    type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.ui.datepicker.min.js")" 
    type="text/javascript"></script>

这是我在我的视图中的内容:

代码语言:javascript
复制
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
    <legend>Student</legend>

    <div class="editor-label">
        @Html.LabelFor(model => model.FullName)
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.FullName)
        @Html.ValidationMessageFor(model => model.FullName)
    </div>

    <div class="editor-label">
        @Html.LabelFor(model => model.DOB)
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.DOB, new { @class = "date" })
        @Html.ValidationMessageFor(model => model.DOB)
    </div>

    <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>

}

在视图中的同一文件中,我将脚本放入顶部的编辑器中以挂钩日期选择器:

代码语言:javascript
复制
<script type="text/javascript">
$(document).ready(function () {
    $('.date').datepicker();
});

许多教程都建议使用EditorTemplate来实现这一点,但我认为这不是必需的。我错过了什么吗?感谢大家的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-01 19:47:22

我不相信你可以使用EditorFor并在一个类中传递。相反,请尝试:

代码语言:javascript
复制
<div class="editor-field">
    @Html.TextBoxFor(model => model.DOB, new { @class = "date" })
    @Html.ValidationMessageFor(model => model.DOB)
</div>

TextBoxFor将接受超文本标记语言属性。

票数 0
EN

Stack Overflow用户

发布于 2012-08-01 19:53:40

下面是一个简单的工作演示,请阅读this

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
  <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>

  <script>
  $(document).ready(function() {
    $("#datepicker").datepicker();
  });
  </script>
</head>
<body style="font-size:62.5%;">

<div id="datepicker"></div>

</body>
</html>
票数 0
EN

Stack Overflow用户

发布于 2013-01-12 02:16:52

第二个参数是 @Html.TextBoxFor() htmlAttributes

第二个参数是 @Html.EditorFor() additionalViewData

因此,新的{@= "date“}日期对@Html.TextBoxFor()没有预期的效果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11758466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档