2017-09-19 3 views
0

여기에 html 페이지가 있습니다. 같은 페이지의 하단에서 Javascript 외부 메서드를 찾을 수 없음

var accountid = getParameterByName("AccountId"); 
var account = null; 

if (accountid != null) 
{ 
    account = GetEntity("Account", accountid, "Name, piv_BusinessUnit, AccountId"); 
} 

내가이 오류를 얻을 페이지를 실행하는 경우 해당 파일 내에서이

<script src="js/datasource.CRM.js"></script> 

function GetEntity(logicalName, id, columnSet) 
{ 
    return RunQuery(logicalName + "Set?&$filter="+logicalName+"Id eq guid'{" + id + "}'" + "&$select="+columnSet); 
} 

입니다

Uncaught ReferenceError: GetEntity is not defined 

누구든지 Jav가 왜 어떤 이유인지 알고 있습니까? 그것이있을 때 ascript 함수를 찾을 수 없습니다 ???

+0

그것은 아마도 범위 밖이지만, 어떻게 그리고 왜 모든 – adeneo

+1

음을 보지 않고 대답하는 것은 불가능 기다리 실패, 노회의 예입니다 , 당신은 스크립트 태그가 포함되기 전에 함수를 실행하려고합니까? 그렇다면 함수를 실행하는 코드 위에 스크립트 태그를 이동하십시오. – adeneo

+1

_ "해당 페이지의 맨 아래에 있습니다"_ 함수가 정의되기 전에 스크립트가 호출 된 것처럼 보입니까? – guest271314

답변

1

외부 스크립트를로드하는 스크립트 태그를 포함하는 경우 DOM에서 발생한 대로만 구문 분석되며 이러한 호이 스팅은 스크립트 태그에서 작동하지 않습니다.

즉, 스크립트를 실제로 사용하기 전에 포함시켜야합니다. 여기

가 포함되기 전에 jQuery를 사용하고

<script type="text/javascript"> 
 
    $('#epic fail').addClass('wont_work'); // $ is not defined error 
 
</script> 
 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

관련 문제