2017-03-09 13 views
1

多分これに関連する問題がありましたか? MVCビューページで使用するいくつかの機能を備えたjsスクリプトを作成しました。そのスクリプトをビュー内で参照しています。カスタム製作されたjsスクリプトは、デバッグモードでは動作しますが、Azureでは動作しません。

<script src="~/js/saveNewMeeting.js"></script> 

デバッグモードからローカルで機能をテストするとすばらしいことになります。しかし私がAzureに自分のプロジェクトを公開するとき、私はsaveNewMeeting.jsからの機能を持っていません。

私はChromeに接続してコンソールを見ると、jsリソースにsaveNewMeeting.jsが表示されます。そのため、ファイルがロードされます。そして、私はそれが最初に実行され、私はメインのブロックが実行されることはありませんことに気づくかどうかをチェックするためのコードにブレークポイントを置くとき:

(function() { 
    var addNewMeetingModal = document.getElementById('createNewEventModal'); 
    var span = document.getElementsByClassName("close")[0]; 

    document.ready = function() { 
     $('#startdatetimepicker').datetimepicker({ 
      daysOfWeekDisabled: [0, 6] 
     }); 
     $('#enddatetimepicker').datetimepicker({ 
      daysOfWeekDisabled: [0, 6] 
     }); 
     PopulateVenueSelectList(); 
    } 

    span.onclick = function() { 
     addNewMeetingModal.style.display = "none"; 
    } 

    function ClearPopupFormValues() { 
     $('#eventID').val(""); 
     $('#eventTitle').val(""); 
     $('#enddatepicker').val(""); 
     $('#startdatepicker').val(""); 
     $('#endtimepicker').val(""); 
     $('#starttimepicker').val(""); 
     $('#venue').empty(); 
    } 

    function PopulateVenueSelectList() { 
     var venueSelect = $('#venue'); 

     venueSelect.prepend("<option value='' selected='selected'></option>"); 

     $.getJSON("/Meeting/GetAllActiveVenues", null, function (venues) { 
      $.each(venues, function (i, venue) { 
       $('<option>', { 
        value: venue.id 
       }).html(venue.name).appendTo(venueSelect); 
      }); 
     }); 
    } 
})(); 

それはaddNewMeetingModalspan変数を作成しますが、document.readyブロックの中に入ることはありません。イベントには何か問題があります。

私の考えは、おそらくwindow.onloadイベントを使用できます。しかし、私がそのようにコードを変更したとき、デバッグモードでの動作が停止しました。

誰かがイベントのこの問題がなぜ起こっているのか考えていますか?

jQueryは_Layout.cshtmlで参照されています。

答えて

0

準備完了イベントをバインドする方法が間違っているようです。標準のjQueryコーディングサンプルに従ってください。

ただ、例えば

$(document).ready(function() { 

    // Add more from the Code here 


    $('#startdatetimepicker').datetimepicker({ 
     daysOfWeekDisabled: [0, 6] 
    }); 
    $('#enddatetimepicker').datetimepicker({ 
     daysOfWeekDisabled: [0, 6] 
    }); 
    PopulateVenueSelectList(); 
}); 
を試してみてください
関連する問題