2011-08-30 2 views
0

여기 내 코드

<script type="text/javascript" href="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
<script type="text/javascript" href="js/js.js"></script> 
... 
<input type="text" name="city" onkeyup="loadStation(this.value);"/> 
... 

에게의 간단한 기능을로드 할 수 없습니다 내가 onKeyUp에 loadStation를 실행하려고하면 js.js이

//Load Stations 
function loadStation(stationCity){ 
    alert(stationCity); 
} 

파일, 아무 일이 없을 것. js/js.js의 경로는 소스에서로드 할 수 있기 때문에 ok입니다.

무엇이 잘못 될 수 있습니까?

편집

나는 ""그것은 SRC = 했어야 ""= 대신 HREF의 .... 정말 바보 떨어졌다. funiest 일에도 너희들이 그것을 통지하지 않은 것입니다 : P

감사

+0

있습니까? 그것은 상대 경로를 사용하고 있으므로'/ foo/bar.php' 페이지에 있다면'/ js/js.js'가 아니라'/ foo/js/js.js'에서 스크립트를로드하려고 시도 할 것입니다. – detaylor

답변

4
당신은 JS/js.js` I 좋겠 방화범을 사용하여 검사를 제안하면 그`잘못 될 수있다 js 파일에서 404 오류가 발생하지 않습니다. 하위 디렉토리에 문제가 없도록 js 파일에 대한 루트 상대 링크 (`/ js/js.js`)를 사용하려고했을 수 있습니다.

나는 often professed the beauty of HTML CSS & JavaScript as an MVC pattern입니다. 그래서 나는 여기에 들어가기를 간절히 바란다. 당신은 이벤트가 휴식을 나는 종종 설명하는 좋은 MVC 패턴을 속성 자바 스크립트 인라인을 사용 .js 파일

에, .html 파일에 .css 파일에 CSS, 그리고 자바 스크립트를 당신의 HTML을 유지해야한다, 그래서 그것은의 이벤트를 부착하는 것이 훨씬 낫다 스크립트 자체 자세한

//wrap this in a document.ready or window.onload event callback 
//-or- 
//place the script *after* the input element has been added to the dom 
var input; 
//replace with whatever selector 
input = document.getElementsByTagName('input')[0];works 
input.onkeyup = function(){ loadStation(this.value) }; 

...more code... 

function loadStation(val) 
{ 
    alert(val); 
} 

Fiddle

몇 디버깅 질문 : * 당신이 평평한 HTML & JS 파일 LOCA를 테스트 일리? * 플랫 파일을 서버에 업로드하고 있습니까? * 콘텐츠의 위치에 대한 URL을 게시 할 수 있습니까? 당신은 script 요소 href 대신 src 사용하고

.

+0

js/js.js 앞에/또는 not가 있으면 아무 일도 일어나지 않습니다. 소스 코드에서 whern을 클릭하면 원본에서 js 파일이로드되므로 경로가 올바르다. – Warface

+0

@Warface, "소스 코드에서"무슨 말을하고 있습니까? 어떤 편집기를 사용하고 있습니까? – zzzzBov

+0

Chrome에서 간단한 CTRL-U를 사용하면 소스 코드를 바로 볼 수 있습니다! js/js.js 경로를 클릭하면 소스 코드가 js.js 내용을로드하므로 경로가 올바르도록로드됩니다. – Warface

0

당신의 js 파일에서이 같은 onKeyUp에 추가하려고 : 당신은 당신의 자바 스크립트 소스 경로가 올바른지 확인

$('body').ready(function(){ 
    $('#idOfInput').onkeyup(function(){ 
     loadStation(this.value) 
    }); 
});