2012-02-08 4 views
0

텍스트 상자의 값을 받아 URL을 만드는 매우 간단한 HTML 양식이 있습니다. 당신이 볼 수 있듯이 입력 타격 때양식에 텍스트 인코딩 ... 모든 솔루션?

<form id="searchForm" method="GET" action="http://searchserver/results.aspx target="_blank"> 
      <input type="text" name="p" size="18" maxlength="256" value="hello world"/> 
</form> 

는,이 같은 URL을 사용하여 새 브라우저에 값을 보냅니다 : 여기 내 양식이다 "HTTP : //searchserver/results.aspx P = 안녕 + 세계 "

여기에 더하기 (+) 기호를 % 20 문자에 넣는 방법이 있습니까? 그래서 될 것이다 : "HTTP : //searchserver/results.aspx P = 안녕하세요 * % 20 * 세계"

감사

답변

0

이 어떤 프레임 워크없이 그것을 할 거라고 방법은 다음과 같습니다

var form = document.getElementById('searchForm'); 
var el = form.elements[0]; 

document.location = form.action + "?" + el.name + "=" + encodeURIComponent(el.value); 

즐기십시오.

+0

감사합니다. 요하네스, 빠른 답장을 보내 주셔서 감사합니다. 솔직히 말해서, 나는 이것을 내 양식에 통합하는 방법을 생각할 수 없습니다. 친절하게이 점을 조금 더 높여 주시겠습니까? 이 자바 스크립트 함수를 추가하는 방법? 새 브라우저로 보내기 전에 어떻게 호출해야합니까? – user1198464

+0

당신이해야 할 일이 있습니다. 나는이 책을 추천합니다 : http://eloquentjavascript.net/ 이것은 위의 코드입니다 : http://jsfiddle.net/jfahrenkrug/qBmFd/3/ –

관련 문제