0

いくつかのJSファイルをロードする「admin.js」という名前のファイルがあります。それらはHTMLにロードされますが、何も機能しません... jqueryエラーがあると考えていますが、それについてほとんど何も知りません。実際には、レンダリングされた html コードは Rails から出力されたものとほぼ同じですが、Rails は機能しません。

レール出力:

<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/breakpoints.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery-ui-1.10.1.custom.min.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery.slimscroll.min.js?body=1" type="text/javascript">    </script>
<script src="/assets/admin/fullcalendar.min.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/bootstrap.min.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery.blockui.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery.cookie.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery.flot.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/jquery.flot.resize.js?body=1" type="text/javascript">    </script>
<script src="/assets/admin/jquery.gritter.min.js?body=1" type="text/javascript">    </script>
<script src="/assets/admin/jquery.uniform.min.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/date.js?body=1" type="text/javascript"></script>
<script src="/assets/admin/daterangepicker.js?body=1" type="text/javascript"></script>
<script src="/assets/admin.js?body=1" type="text/javascript"></script>
<script>
jQuery(document).ready(function() {     
App.setPage("index");  // set current page
App.init(); // init the rest of plugins and elements
});
</script>

動作中の HTML 出力:

<!-- BEGIN JAVASCRIPTS -->
<!-- Load javascripts at bottom, this will reduce page load time -->
<script src="assets/js/jquery-1.8.3.min.js"></script>   
<!--[if lt IE 9]>
<script src="assets/js/excanvas.js"></script>
<script src="assets/js/respond.js"></script>    
<![endif]-->    
<script src="assets/breakpoints/breakpoints.js"></script>       
<script src="assets/jquery-ui/jquery-ui-1.10.1.custom.min.js"></script> 
<script src="assets/jquery-slimscroll/jquery.slimscroll.min.js"></script>
<script src="assets/fullcalendar/fullcalendar/fullcalendar.min.js"></script>
<script src="assets/bootstrap/js/bootstrap.min.js"></script>
<script src="assets/js/jquery.blockui.js"></script> 
<script src="assets/js/jquery.cookie.js"></script>
<script src="assets/flot/jquery.flot.js"></script>
<script src="assets/flot/jquery.flot.resize.js"></script>
<script type="text/javascript" src="assets/gritter/js/jquery.gritter.min.js"></script>
<script type="text/javascript" src="assets/uniform/jquery.uniform.min.js"></script> 
<script type="text/javascript" src="assets/bootstrap-daterangepicker/date.js"></script>
<script type="text/javascript" src="assets/bootstrap-daterangepicker/daterangepicker.js"></script>  
<script src="assets/js/app.js"></script>                
<script>
    jQuery(document).ready(function() {     
        App.setPage("index");  // set current page
        App.init(); // init the rest of plugins and elements
    });
</script>

JS をロードする Admin.js ファイル (および実際に動作するファイル)

// This is a manifest file that'll be compiled into application, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, libjavascripts, vendorjavascripts,
// or vendorjavascripts of plugins, if any, can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
// GO AFTER THE REQUIRES BELOW.
//= require jquery_ujs
//= require jquery
//= require admin/breakpoints
//= require admin/jquery-ui-1.10.1.custom.min   
//= require admin/jquery.slimscroll.min
//= require admin/fullcalendar.min
//= require admin/bootstrap.min
//= require admin/jquery.blockui    
//= require admin/jquery.cookie
//= require admin/jquery.flot
//= require admin/jquery.flot.resize
//= require admin/jquery.gritter.min
//= require admin/jquery.uniform.min    
//= require admin/date
//= require admin/daterangepicker

そして admin.html.erb ファイル

<!DOCTYPE html>
    <html>
    <head>
    <title>title</title>
    <%= stylesheet_link_tag "application", :media => "all" %>
    <%= csrf_meta_tags %>
    </head>
    <body class="fixed-top">

    <%= yield %>

    <%= javascript_include_tag "admin" %>
    <script>
    jQuery(document).ready(function() {     
    App.setPage("index");  // set current page
    App.init(); // init the rest of plugins and element }
    );
    </script>
    </body>
    </html>

私はすでに多くのオプションを試しました。実際には、元の HTML からコードを貼り付けて Rails アプリ アセットのパスを変更するだけで機能しますが、正しい Rails 構造でこれを行い、なぜそれが起こっているのかを理解したいと考えています...エラーメッセージが表示されますが、アコーディオンなどのコントローラーは機能していません。

皆さんが助けてくれることを願っています。

4

0 に答える 0