0

我的一个观点需要一个日期时间选择器,所以我决定使用 Trent Richardson 的选择器,因为它似乎是最受欢迎的选择。但是直到现在我还不能让它工作,我不确定我是不是做错了什么或者一切都很好,但我错过了一些步骤......也许两者兼而有之。所以这就是我所做的:

  1. jquery-ui-timepicker-addon在我的Scripts\plugins\datepicker directory where I already havejquery.ui.datepicker.min.js名称下添加了查询代码,所以现在我在那里有两个文件。
  2. 在 `Shared_Layout.cshtml 视图中包含我的新 js 文件,例如:

这是我为使 datetimepicker 可用所做的两个步骤。然后在我也使用 datepicker 并且它有效的部分视图之一中,我尝试像这样使用 datetimepicker:

else if (field[i].MCS_Fields.QuestionTypeId == 3)
                    { 
                        <script type="text/javascript">
                            $(function () {
                                $(".datetimepicker").datetimepicker();
                            });
                        </script>
                        <input type="text" class="datetimepicker" />
                        @*@Html.TextBox("datetimepicker", "", new { @class = "datetimepicker" })*@
                    }

但它不起作用。首先我尝试过,@Html.TextBox但正如你所看到的,我评论了它并尝试了简单的<input标签。但在同样的部分观点中,我有这个:

if (field[i].MCS_Fields.QuestionTypeId == 2)
                    { 
                        <script type="text/javascript">
                            $(function () {
                                $(".datepicker").datepicker();
                            });
                        </script>
                        @Html.TextBox("datepicker", "", new { @class = "datepicker" })
                    }

它按预期工作。我注意到的是,在_Layout页面中 datepicker js 文件不包含在任何地方,我仍然可以使用它。我是否将 datetimepicker 包含在错误的位置?还是问题出在其他地方?

4

1 回答 1

1

在您的布局中,确保您已在jquery-ui-timepicker-addon.js脚本之后包含脚本,该jquery.ui.datepicker.min.js脚本必须包含jquery.js脚本之后。

另外,我建议您从部分中删除所有脚本,并将其放在布局中包含的脚本之后:

<script type="text/javascript">
    $(function () {
        $('.datetimepicker').datetimepicker();
    });
</script>

如果您的脚本包含在 DOM 的末尾,您甚至不需要将它们包装在 document.ready 事件中。

于 2013-05-14T07:19:06.373 回答