웹 서비스에 연결하고 메소드를 실행하기 위해 ColdFusion을 사용하고 있습니다. 반환 된 xml 문자열의 내용을 ColdFusion 배열에 저장 한 다음 ColdFusion 배열을 JavaScript 배열로 변환하여 HTML 문서의 내용을 채울 수 있습니다.
내 문제는 " agent_photo_list
" 라는 순서가없는 목록에 사진을 추가하려고 할 때 발생합니다 . 특히 .setAttribute
메서드를 호출 할 때 . 'src'
매개 변수 를 포함하는 것 같습니다 . JavaScript 코드는 cfscript tag
and WriteOutput
메서드 안에 없을 때 예상대로 작동합니다 . 문제를 조사했지만 충분히 유사한 참조를 찾을 수 없었습니다. 여전히 내 문제가 무엇인지 이해하는 데 어려움이 있습니다. 아래에 내 코드를 포함했습니다.
cfscript>
WriteOutput('
<script language = "JavaScript">
var #ToScript(array, "jsArray")#
var agent = jsArray[0];
document.getElementById("output").innerHTML = agent.firstname + " " + agent.lastname;
var imgurl = "_images/agentphoto.jpg";
var node = document.createElement("LI");
var imgnode = (document.createElement("IMG"));
imgnode.setAttribute('src', "imgurl");
node.appendChild(imgnode);
document.getElementById("agent_photo_list").appendChild(node);
</script>
')
</cfscript>
_images
테스트 목적으로 폴더 에있는 jpg 파일을 사용하고 있습니다 agent.photourl
. 나중에 .
내가 얻는 오류는 다음과 같습니다.
열 35의 117 행에서 잘못된 CFML 구문이 발견되었습니다. ColdFusion에서 다음 텍스트를보고 있습니다. <p> src </ p> <p> CFML 컴파일러가 처리 중입니다. <ul> <li> 온라인에서 WriteOutput으로 시작하는 표현식 111, 17 열.이 메시지는 일반적으로 표현식 구조의 문제로 인해 발생합니다. <li> 111 행 17 열에서 WriteOutput으로 시작하는 스크립트 문. <li> 102 행 10 열에서 시작하는 cfscript 태그 </ li> ul> 포함되거나 처리되는 특정 파일 시퀀스 : C : \ inetpub \ wwwroot \ webservice.cfm, 행 : 117
메서드를 cfscript
호출 할 때까지 내 JavaScript가 태그 내부에서 작동하는 setAttribute
이유와 cfscript
태그 외부에서 작동하는 이유가 궁금합니다 .
당신의 통찰력에 감사하겠습니다. 감사합니다.
src 를 "" 로 감싸 야합니다 . 또한 WriteOutput 클로저 끝에 " ; "를 추가하십시오 . 아래 코드가 작동합니다.
<cfscript>
WriteOutput('
<script language = "JavaScript">
var #ToScript(array, "jsArray")#
var agent = jsArray[0];
document.getElementById("output").innerHTML = agent.firstname + " " + agent.lastname;
var imgurl = "_images/agentphoto.jpg";
var node = document.createElement("LI");
var imgnode = (document.createElement("IMG"));
imgnode.setAttribute("src", "imgurl");
node.appendChild(imgnode);
document.getElementById("agent_photo_list").appendChild(node);
</script>
');
</cfscript>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다