【问题标题】:why datepicker doesnt show on View?为什么日期选择器不显示在视图上?
【发布时间】:2016-03-22 09:58:00
【问题描述】:

我有以下带有jquery datepicker的文本框的视图,这显示了带有datetime格式标签的DOB按钮的文本框,但是当单击按钮或单击文本框时,它不显示datepicker .我该如何解决这个问题?

@model dtTest.OrderTime

@{
    ViewBag.Title = "Edit";
}

<h2>Edit</h2>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)

    <fieldset>
        <legend>OrderTime</legend>

        @Html.HiddenFor(model => model.id)

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

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

        <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>
}

<div>
    @Html.ActionLink("Back to List", "Index")
</div>

@section Scripts {

    @Scripts.Render("~/bundles/jqueryval")

    <script>
        $('document').ready(function () {
            $('#TimeUTC').datepicker({
                appendText: 'mm/dd/yyyy',
                showOn: 'both',
                buttonText: 'DOB',
                dateFormat: 'dd/dd/yy',
                changeMonth: true,
                changeYear: true,
                minDate: new Date(2000, 0, 1),
                maxDate: new Date(2005, 0, 1)
            });
        });
    </script>
}

我的布局文件添加了 jqueryui 包

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width" />
    <title>@ViewBag.Title</title>
    @Styles.Render("~/Content/css")
    @Scripts.Render("~/bundles/modernizr")
</head>
<body>
    @RenderBody()

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/jqueryui")

    @RenderSection("scripts", required: false)
</body>
</html>

捆绑文件是:

    public class BundleConfig
    {
        // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
        public static void RegisterBundles(BundleCollection bundles)
        {
            bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}.js"));

            bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                        "~/Scripts/jquery-ui-{version}.js"));

            bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                        "~/Scripts/jquery.unobtrusive*",
                        "~/Scripts/jquery.validate*"));
}}

当我点击文本框时,浏览器在控制台(chrome)中抛出以下错误

这是我的脚本文件夹:

【问题讨论】:

  • 您遇到了什么错误?请检查您的浏览器控制台。
  • @ParthTrivedi 很抱歉在文本框中单击时出现延迟,这是错误“jquery-ui-1.8.20.js:8569 Uncaught TypeError: Cannot read property 'msie' of undefined”跨度>
  • 我相信您使用的 jquery-ui 版本与您的 jquery 不兼容。您使用的是哪个jquery 版本?也请看一下:stackoverflow.com/questions/14923301/…
  • @ParthTrivedi 所以我添加了迁移脚本文件?

标签: jquery asp.net-mvc-4


【解决方案1】:

视觉工作室

菜单 > TOOLS &gt; Library and Package Manager &gt; Package Manager Console

PM &gt; Install-Package JQuery -版本按 Tab 在这里查看所有版本。

更新现有的 jQuery 包并解决您使用旧 jQuery 版本的问题。

更多请查看How to get latest jQuery 1.x via Nuget in Visual Studio?

【讨论】:

  • 什么是通常与 MVC 一起使用的库,以便我可以 DL 并将它们作为备份
  • 我丢失了 datepicker 的 css 设置,它显示为透明控件,有没有办法解决这个问题?
  • 您的脚本文件夹。只需进行整个备份。
  • 您有文件夹备份吗?然后从该文件中查找。
猜你喜欢
  • 2017-04-26
  • 2012-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
  • 2013-04-08
  • 1970-01-01
相关资源
最近更新 更多