2011-05-01 2 views
0

상황은 다음되면서 :Javascript 기능을 호출하려면 자체 파일에 저장해야합니까?

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

이 파일은 포함 : 그냥 body 태그 바깥이와

<form action="/flash_card/scripts/create_user_gate.php" 
      onsubmit="return validateForm()" method="post"> 
      <table align="center"> 
       <tr> 
        <td>Name</td> 
        <td><input type="text" name="name" id="uname" 
         onkeydown="return checkInput(event)"></td> 
       </tr> 
       <tr> 
        <td>Password</td> 
        <td><input type="password" name="password"> 
       </tr> 
       <tr> 
        <td></td> 
        <td><button onclick="return validateForm()" type="button" 
          title="Create user!" name="submit">Create!</button> 
        </td> 
       </tr> 
      </table> 
     </form> 

:

나는 .PHP 파일에이 양식을했다

/** 
* 
*/ 

function validateForm(){ 
    document.write("BURNED INTO YOUR MINDDDD"); 
    return false; 
} 

function onlyAlphaNumericAndModifiers(e) { 
    var keynum; 
    var keychar; 
    var numcheck; 

    if (window.event) // IE 
    { 
     keynum = e.keyCode; 
    } else if (e.which) // Netscape/Firefox/Opera 
    { 
     keynum = e.which; 
    } 
    // letters, numbers, backspace, delete, arrow keys 
    if (keynum >= 65 && keynum <= 90 || keynum >= 48 && keynum <= 57 
      || keynum == 8 || keynum >= 37 && keynum <= 40 || keynum == 46) { 
     return true; 
    } else { 
     return false; 
    } 
} 

주위를 둘러 보았을 때, 내가 validat을 얻을 수 없다는 것을 알았습니다. eForm()을 호출하면 전혀 호출되지 않으므로 파일을 별도로 분리하여 갑자기 click이 validateForm()을 발생 시키면 텍스트 상자의 onkeydown이 checkInput을 올바르게 발생시킵니다.

어디서 잘못 되었나요? 나는 .js 파일이 하나 이상의 함수를 포함 할 수 있다고 가정하고 있으므로, 근본적인 것을 놓치고 있어야합니다.

+3

아니요, 해당 파일에있을 필요는 없습니다. 어쩌면 파일의 다른 부분에 오류가있을 수 있습니다. –

+0

이제는 문제가 단순한 캐싱일지도 모른다고 생각합니다 ... 파일을 분할 할 때 성공한 이유는 새 파일로 강제 실행 되었기 때문입니다. 단순히 이전 파일에 함수를 추가하면 이전 파일이 계속 사용되기 때문에 내가 목격 한 동작이 발생합니다. 문제는 .js 또는 다른 리소스의 캐싱을 제거하는 방법이됩니다. 나는 내 모든 .php 및 .html 파일을 캐싱이 없도록 설정했지만 분명히 이것은 .js로 버블 링되지 않습니다 ...? 매우 짜증이 나서 혼란 스럽습니다. – Danedo

답변

0

/flash_card/js/webscripts.js에 오류가있는 것 같습니다.이 파일의 출처를 게시 할 수 있습니까?

관련 문제