2017-01-11 17 views
0

動的にjsファイル内にURLをロードします。私はhead.jsファイルの中で以下のコードを使用しましたが、URLを取得していません。私は静的に使用する場合、それはうまく動作します。私は自分の問題を見つけることができません。jsファイル内でcodeigniter base_url()を使用してURLを動的にする方法

head.js(<?php echo base_url(); ?>"assets/js/newsticker/jquery.newsTicker.js", function() { 
    var nt_title = $('#nt-title').newsTicker({ 
     row_height: 18, 
     max_rows: 1, 
     duration: 5000, 
     pauseOnHover: 0 
    }); 
}); 
+0

PHPは.jsファイルではなく.phpファイルでのみ使用できます。あなたのベースURLは何ですか? '/' + 'assets /'によって得られるURLは – C2486

+0

です。もしファイル名が 'head.js'ならこれがうまくいかず、ファイル名は' head.php' –

+0

となります。 .jsファイルをhead.phpとして保存すると、jsコードで動作しますか? – user7149801

答えて

1

JavaScriptファイルに<?php echo base_url(); ?>は使用できません。

あなたが動的URLを取得したい場合は、あなたがwindow.location.origin

var url = window.location.origin; 

変数urlbase_urlのように印刷されます使用することができます。https://subdomain.stackoverflow.com

https://stackoverflow.com

サブドメインは次のように印刷されますだから、ちょうどあなたの変更にと同様に、資産の前/を追加します。

head.js(url+"/assets/js/newsticker/jquery.newsTicker.js", function() { 
    var nt_title = $('#nt-title').newsTicker({ 
     row_height: 18, 
     max_rows: 1, 
     duration: 5000, 
     pauseOnHover: 0 
    }); 
}); 

は、このヘルプを願っています。

0

あなたは純粋なJS file.Followingでbase_url()を取得したい場合は...

1.In HTML(PHP)正しい方法は、値base_url.Asに隠されたタイプの入力フィールドを作成することができますあなたの純粋なJSファイルとして以下のようなhead.jsに.getのBASE_URLで

<input type="hidden" id="url" value="<?php echo base_url();?>"> 

2.Then。

<script> 
var base_url = $("#url").val();//it gives base_url 
head.js(base_url+"assets/js/newsticker/jquery.newsTicker.js", function() { 
    var nt_title = $('#nt-title').newsTicker({ 
     row_height: 18, 
     max_rows: 1, 
     duration: 5000, 
     pauseOnHover: 0 
    }); 
}); 
</script> 

:CodeIgniterのではbase_url()の使用のためにurlヘルパーをロードすることを忘れないでください。

関連する問題