2016-08-26 4 views
0

내 양식의 검색 버튼을 클릭하면 url에 몇 가지 매개 변수를 설정하여 제출하고 싶습니다.자바 스크립트에서 GET url을 생성하여 제출

다음은 대신 내가 어떻게이 작업을 수행 할 수 있습니다 http://localhost:8080/Project/vendor/search?query=xxx

로 필요 http://localhost:8080/Project/vendor/search?query=xxx&search_query=xxx&search=Search

function validateSubmitSearch(form) { 
    if(form.elements["iAccept"].checked == true) { 
    form.query.value=form.search_query.value; 
    form.action = "vendor/search"; 
    form.method = "GET"; 
    form.submit(); 
    } 
} 

이 자바 스크립트가 반환 URL 내 자바 스크립트입니까?

편집 :

내가 search_query 폼 요소를 제거 할 수 없습니다

하고 여기에 search

는 HTML 코드

<form class="searchform" onSubmit="validateSubmitSearch(this)"> 
    <input name="query" type="hidden" /> 
    <input name="search_query" class="textbox" type="text" /> 
    <input type="checkbox" id="iAccept" name="iAccept" value="I ACCEPT"> 
    <input name="search" class="button" value="Search" type="submit" /></td> 
</form> 
+0

당신의 HTML 코드의 complate를 추가하십시오. –

+0

'form.search_query.value;'의 값은 무엇입니까? –

+0

@IvanBarayev : HTML 코드 –

답변

1

당신은`방법 = "GET"모든 입력 필드와 함께 양식을 제출하면 양식의 URL 매개 변수로 포함됩니다. 그 중 일부를 생략하려면 양식에서 해당 입력을 제거해야합니다.

function validateSubmitSearch(form){ 

    if(form.elements["iAccept"].checked == true) 
     { 
      form.query.value=form.search_query.value; 
      form.action = "vendor/search"; 
      form.method = "GET"; 
      form.seach_query.parentNode.removeChild(form.search_query); 
      form.search.parentNode.removeChild(form.search); 
      form.submit(); 
     } 
    } 
} 

또한, 당신은 onsubmit 코드에서 false를 반환하여 기본 양식 제출을 비활성화해야합니다.

<form class="searchform" onsubmit="validateSubmitSearch(this); return false;"> 
+0

이 중 하나가 작동하지 않습니다. URL에 여전히 원치 않는 매개 변수가 있습니다. –

+0

어떻게 함수를 호출합니까? 기본 제출을 사용 중지하지 않는 것일 수 있습니다. – Barmar

+0

업데이트 된 답변보기 – Barmar

관련 문제