1

我正在尝试让 jQuery 插件 meioMask 在 MVC 部分视图中工作。

作为试验,以下工作:

<head>
<script type="text/javascript" src="jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="jquery.meio.mask.min.js" charset="utf-8"></script>
<script type="text/javascript">
    jQuery(function($) {
        $('#StartTimeText').setMask('time');
});
</script>
</head>

<body>
<input type="text" id="StartTimeText" />
</body>

文本编辑框应用了蒙版编辑。但是,我的文本编辑框位于 MVC 局部视图中,当用户单击主视图中的某个项目时会显示该视图。在主视图中,<head>我添加了以下内容:

<script src="@Url.Content("~/Scripts/jquery-1.8.3.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.meio.mask.min.js")" type="text/javascript"></script>

CustomFormPartialView.cshtml中,我有以下内容:

<script type="text/javascript">
    jQuery.ajax(
      function ($) {
        $('#StartTimeText').setMask('time');
      }
    );
</script>

<input type="text" id="StartTimeText" />

但是文本框仍然是一个没有应用编辑掩码的常规文本框。我认为这是因为 setMask 函数没有运行。我也尝试过使用jQuery.getjQuery.post它们都没有任何区别。

抱歉,如果已经问过这个问题,我已经尝试了其他解决方案,但没有任何运气。我在这个领域有点新,所以如果有人可以发布尽可能完整的代码示例,我将不胜感激。谢谢。

编辑:

按照 JasCav 的建议,我将以下内容放在<head>文件的部分中。据我所知,ajax 函数根本没有运行。如果有帮助的话,这是使用 DevExpress 的 MVC 调度程序。我在 FireBug 中没有收到任何错误。

<script type="text/javascript">
  jQuery.ajax({
    url: '/WebTMS_MVC/Calendar/SchedulerPartial',
    type: 'POST',
    success: function (data, textStatus, xhr) {
      $('#StartTimeText').setMask('time');
    }
  });
</script> 
4

1 回答 1

1

您可以使用 jQuery 的 ajax 函数提供了许多回调,您可以使用这些回调在完成 ajax 调用后执行特定的操作(成功和完成是两个)。在jQuery 的 ajax 函数文档中查看更多信息。

$.ajax({
  url: yourUrl,
  type: "GET",
  data: formData,
  success: function(data) {
    // Do your stuff here.
});
于 2012-12-06T05:04:06.840 回答