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呼び出しの完了後に特定のアクションを実行するために使用できるいくつかのコールバックが提供されます(成功と完了は2つです)。ajax関数については、jQueryのドキュメントを参照してください。

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