2011-09-27 2 views
0

자바 스크립트 코드 단락을 PHP 파일에서 개별 js 파일로 옮기면 js가 더 이상 작동하지 않습니다.js migrate question

나는 단지 "script"태그를 제거하고 모든 js 코드를 js 파일에 붙여 넣습니다. 일부 코드 또는 태그가 누락 되었습니까?

코드

<script> 
_i = <?=$k+1?>; 

function addlng() { 
_id = "lang_"+_i; 
$j("#lang_area").append("<div class='lang_addition' id="+_id+"></div>"); 
$j("#s_lang").clone().appendTo("#"+_id); 
$j("#"+_id).append('<span><a href="javascript:void(0)" >&nbsp;<img id="addlng" class="addlng" 
src="<?=style_url('mvl/images/').'bullet_blue_collapse.png'?>" 
onclick="javascript:sub_img(\''+_id+'\');" /></a></span>'); 
_i++; 

} 

function sub_img(obj) { 
$j("#"+obj).remove(); 

} 
</script> 

답변

2

<?=$k+1?>은 PHP이다. 현재 $k+1에있는 값을 출력합니다. $ k가 무엇인지보기 위해 PHP를 살펴 봐야 할 것이다. 당신은 가능성이 PHP 파일이 보관해야합니다 :

<script type="text/javascript"> 
    var _i = <?=$k+1?>; 
</script> 

그런 다음 당신은 .js 파일의 해당 행을 제거하고 당신이 당신의 .js PHP에 의해 출력 해당 스크립트보다는 당신의 HTML에서 나중에 파일을 포함해야합니다.

+0

제안 된 솔루션은 효과가 있지만'addLng' 함수가 전역에 의존하는 대신 인덱스를 사용하여 향상시킬 수 있습니다. 그렇지 않으면, 그들은 여전히 ​​밀접하게 결합되어 있기 때문에 JS 코드를 PHP 코드에서 끌어낼 이유가 없습니다. –

+1

캐싱이 좋은 이유입니다. – Paulpro

+0

아직 작동하지 않습니다 ... – Juni