1

ASP.Net コードを開発用 VM からサーバーに移動するときに奇妙な問題が発生します。

ページが VM に読み込まれると、マスターに javascript があり、日時ピッカーをテキスト ボックスにアタッチします。

function loadAnyTimeDT() {
        $('.AnyTimeDT').each(function () {
            $(this).AnyTime_picker(
            {
                askEra: false,
                askSecond: false,
                format: "%d-%b-%y %H:%i"
            });
        });
        $('.AnyTimeD').each(function () {
            $(this).AnyTime_picker(
            {
                askEra: false,
                askSecond: false,
                format: "%d-%b-%y"
            });
        });
        $('.AnyTimeT').each(function () {
            $(this).AnyTime_picker(
            {
                askEra: false,
                askSecond: false,
                format: "%H:%i"
            });
        });          
    }

    $(document).ready(function () {
        loadAnyTimeDT();
    });

これはうまく機能し、結果に満足しました。コードをサーバーに移動してデプロイすると、突然日時ピッカーが機能しなくなります。

Web ページのページ ソースを調べたところ、css クラスがサーバーでは "textbox" にスワップされているが、vm ではスワップされていないことに気付きました。これは、コードではなくページが読み込まれた後に発生しています。

これは、グリッドビュー内のテキスト ボックスの 1 つの例です。
<EditItemTemplate> <asp:TextBox ID="txtbTimeStartTime" CssClass="AnyTimeT" runat="Server" Text="<%# Eval("StartTime") %>"></asp:TextBox> </EditItemTemplate>

ページの読み込み後、これがソースに表示されるものです
<input name="ctl00$ContentPlaceHolder1$gvTime$ctl03$txtbTimeStartTime" type="text" id="ContentPlaceHolder1_gvTime_txtbTimeStartTime" class="textbox">

これにより、クラスごとに正しいものだけを選択できなくなったため、日時ピッカーをアタッチするのが難しくなっています。

css クラスを VM と同じように強制することについて何か考えはありますか?

4

0 に答える 0