2012-01-07 4 views
3

2 개의 변수 값을 URL에 전달하려고하는데, url은 이후에 리디렉션됩니다. 어떻게 그들을 JavaScript 문자열에 삽입 할 수 있습니까?URL을 통해 2 개의 자바 스크립트 변수를 전달하는 방법은 무엇입니까?

var a = document.getElementById("username_a").value; 
var b = document.getElementById("username_b").value; 

과 같은 원하는 :

나는이 var string_url = "http://www.example.com/?{a}blabla={b}"을하고 어떻게 든 리디렉션합니다.

PHP에서 나는 예를 들어 그 코드와 함께 갈 것 : <iframe src="http://www.example.com?query=<?php echo $the_variable;?>">

답변

0

분할하는 앰퍼샌드 사용은

var string_url = "http://www.example.com/?" + "username_a=" + a + "&username_b=" + `b 

더 sopisticated 할 수 바르하지만, 본질적으로 그것은 당신이

+0

사용자 입력이 있습니다. 데이터 **가 필요합니다. ** 도망 가거나 빠져 나옵니다. – Quentin

0
을 필요로하는 무슨이다

JavaScript가 문자열 보간을하지 않습니다. 값을 연결해야합니다.

var uri = "http://example.com/?" + encodeUriComponent(name_of_first_variable) + "=" + encodeUriComponent(value_of_first_variable) + '&' + encodeUriComponent(name_of_second_variable) + "=" + encodeUriComponent(value_of_second_variable); 
location.href = uri; 
6

당신은 "a" + "b" == "ab"true로 평가 자바 스크립트 문자열을 추가 할 수 있습니다.

그래서 당신이 원하는 아마 var string_url = "http://www.example.com/?" + a + "&blabla=" + b;

입니다 그러나 당신은 이제까지

a = encodeURIComponent(a); 
b = encodeURIComponent(b); 

그리고

var string_url = "http://www.example.com/?" + a + "&blabla=" + b; 

당신을 리디렉션을 그들이 input의에서 오는 경우 특히 바르 탈출, 그래서 시도해야한다 사용할 수 있습니다 window.location :

window.location = string_url; 
관련 문제