2013-07-11 6 views
0

이의 내가 동적으로 아래와 같은 URL에 변수에 정보를 전달하고 있다고 가정 해 봅시다 :자바 스크립트 및 동적 변수 삽입

<script> 

var ORDER = 200; 
var QUANTITY = 1; 
var EXTRA = [200,300,400]; 

var tag = document.write('<scr'+'ipt language="JavaScript" src="http://test.com/test/order.' + ORDER + '/quantity.' + QUANTITY"></scr' + 'ipt>'); 

</script> 

하는의 내가 EXTRA 배열에 모든 데이터를 전달하려는 가정 해 봅시다 ... 내가 어떻게 할까?

내가이 페이지에 기록 된 후 다음과 같이 보입니다 URL을 얻으려고 을 :

http://test.com/test/order.200/quantity.1/extra.200/extra.300/extra.400 

(URL에 같은 추가 매개 변수에 숫자를 전달하는 것은 의도적 인 내가 필요 별도의 인스턴스에서하지만 동일한 변수에 전달할 수)

나는 루프를 사용할 수있는 배열을 통해 순환 할 수 있습니다. 어떻게 동적으로 추가 할 수 있습니다. 위? 이 작품 같은

겠습니까 뭔가? 당신의 도움에 대한

for (i = 0; i < EXTRA.LENGTH; i++){ 
    tag.append(EXTRA[i]); 
} 

할 수 있다면 알려 주시기 바랍니다,

감사합니다!

+0

친애하는 친구를하고 ​​싶은 것입니다. params를 보내고 필요한 것을 얻으려면 AJAX (예 : jQuery $ .get)를 사용하지 않는 이유는 무엇입니까? – aldux

+0

문자열을'document.write'에 전달하기 전에 문자열을 만든 다음 일반 문자열 연결을 수행하십시오. '.append()'메소드는 없습니다. –

+1

팁 : 1. http://stackoverflow.com/questions/802854/why-is-document-write-considered-a-bad-practice 변수 2. 소문자 또는 cameCase는 대문자 상수를 나타냅니다. 3. 구문 강조를 병합하여 두 번 확인하십시오. 4. '나는'선언하는 것을 잊어 버렸다. 5. URL을 인코딩하십시오. – elclanrs

답변

5

이것은 배열의 항목에 합류에 대한 질문처럼 보인다. 나는 당신의 문제가 다른 하나의 생각, 자바 스크립트는이 목적을 위해 Array.prototype.join을 가지고, 그래서 당신은

var str = 'foo'; 
if (EXTRA.length) str += '/extra.' + EXTRA.join('/extra.'); 
str; // "foo/extra.200/extra.300/extra.400"