2015-01-20 6 views
0

"CodeIgniter에 자바 스크립트 파일 포함"이라는 주제를 모두 읽었습니다. 문제점을 다음 코드로 줄였습니다.CodeIgniter에 자바 스크립트 파일 포함하기

나는 WAMP와 함께 작업하고 나는 c:\wamp\www\codeigniter 폴더에 Codeigniter를 복사했다. 나는 또한이 포함 된 파일 mnd3js.js

<html> 
<head> 
<script type="text/javascript" src="mnd3js.js" ></script> 
</head> 
<body> 
<h3 onclick="fsort()">Click on me to see alert message</h3> 
</body> 
</html> 

c:\wamp\www\codeigniter\application\view\mnd3v\에서 : c:\wamp\www\codeigniter\application\view\mnd3v\에서

<?php 
class mnd3c_test extends CI_Controller { 
public function __construct() 
    {parent::__construct();} 
public function test() 
    {$this->load->view('mnd3v/mnd3v_test.php'); } 
} 

내가 포함 된 파일 mnd3v_test.php 있습니다 c:\wamp\www\codeigniter\application\controlers\에서

나는이 포함 된 파일 mnd3c_test.php

function fsort() 
{ alert ("fsort"); } 

은 내가 config.php 파일에서 설정 한 :

$config['base_url'] = 'http://localhost/codeigniter/'; 

내가 함께 Internet Explorer 또는 구글 크롬에서 내 페이지를로드 :

http://localhost/codeigniter/index.php/mnd3c_test/test 

내가 클릭하면 "경고 메시지를보고 저를 클릭" 아무 것도 일어나지 않습니다 (IE에서 "페이지의 오류"메시지가 표시됨). mnd3v/mnd3js.js 또는 localhost/application/views/mnd3v/mnd3js.js 같은 모든 종류의 값을 src 애트리뷰트에 넣으려고했지만 아무 일도 일어나지 않았습니다.

경고 메시지를보고 싶습니다. 아무도 나를 도울 수 있습니까?

+0

JavaScript 파일 경로가 잘못되었습니다. 'index.php' 파일은 어디에 위치해 있습니까? 'src' URL이 단순히'mnd3js.js'라면,'index.php'와 같은 디렉토리에 위치해야합니다. – Sparky

+0

index.php 파일은 codeigniter 폴더에 있습니다. mnd3js.js를 codeigniter 폴더에 넣었지만 아무 일도 일어나지 않습니다. 사실 mnd3js를 넣었습니다.js가 여러 폴더에 있지만 경고 메시지가 표시되지 않았습니다. – George

+0

'src' 경로가 단순히'mnd3js.js'라면,'index.php'와 같은 * 디렉토리에 위치해야합니다. 어떤 문제 해결을 수행 했습니까? JavaScript 콘솔 오류를 점검 했습니까? 파일 이름의 철자가 확실합니까? – Sparky

답변

-1

, 당신은 JS 외부 파일을 넣어야 할 응용 프로그램 폴더 src 주소가 codeigniter 응용 프로그램 폴더의 하위 폴더를 가리키면 CodeIgniter는이 주소를 해석하지 못합니다. 왜, 나는 모른다.

0

내가 <script src="<?php echo base_url() ?>js/jquery.js"></script> 곳 JS 소스가 내 공개 경로에 존재하는이 방법을 사용하면 src 속성을 가진보기 파일에 자바 스크립트 파일을 포함해야하는 경우 WAMP, CodeIgniter를, 자바 스크립트를 사용

+0

감사합니다, 당신의 대답은 내 문제의 원인을 발견하도록 도와주세요! – George

1

뷰 폴더에 javascript 파일을 포함 할 필요가 없습니다. 사실 Codeigniter의 뷰 폴더는 템플릿과 같은 종류의 PHP 파일을 보유하기 때문에 실제로 이것은 나쁜 생각이라고 말할 수 있습니다.

대신 Codeigniter 외부의 자체 폴더에 자바 스크립트 또는 기타로드 가능한 미디어를 넣는 것을 고려하십시오. 간단히 js이라는 루트 폴더를 만드십시오 (아마도 application 폴더와 같은 레벨 일 것입니다). 그럼 그냥 상대 링크

<script type="text/javascript" src="/js/mnd3js.js" ></script>

또는

<script src="<?php echo base_url() ?>js/jquery.js"></script>

내가 상대 링크 나 자신을 선호 절대 링크

을 사용하여 파일을 참조하지만, 궁극적으로는 응용 프로그램에 따라 다릅니다.

+0

당신이 할 수없는 강력한 이유가 없다면, base_url을 포함하는면에서 항상 잘못을 저지를 것입니다. – cwallenpoole

+0

이 코드는이 응용 프로그램 용으로 개발되었고 JQuery와 같은 다른 소스에서 가져온 자바 스크립트 코드 만 응용 프로그램 폴더 외부에 있기 때문에 내 JavaScript 파일을 codeigniter 응용 프로그램 폴더에 넣기를 원했습니다. 그러나 이것은 문제가되지 않습니다. JavaScript 코드가 작동한다면 어디에서나 사용할 수 있습니다! – George

관련 문제