2014-03-13 4 views
-1

입력 필드의 값에 액세스하려고합니다. 새 쿼리에 전달하십시오.버튼 클릭시 입력 필드 값 검색

<div class="form-group"> 

         <div class="col-lg-4"> 
         <input type="text" name="storename" value="" class="validate[required] form-control" placeholder="Store name"> 
         <a class="btn btn-danger" href="store.php">&nbsp;&nbsp;&nbsp;Search Store&nbsp;&nbsp;&nbsp;</a> 
         </div> 
          <script type="text/javascript"> 
           $('a.btn-danger').click(function() { 
            window.location.href = $(this).attr('href') + '?name=' + $(this).prev('input').val(); 
           }); 
          </script> 

        </div> 
+0

제출 버튼을 사용하고 있습니까? –

+0

답변

0

글쎄,이 쿼리 문자열에 뭔가가 있습니까?에 storename이 없으면이 페이지를 처음로드하기 위해 서버에 요청할 때 그 값은 비어있게됩니다.

서버 측과 클라이언트 측의 문제가 혼합되어 있습니다. PHP 코드는 사용자가 페이지를보기 전에이 페이지가 요청 될 때 서버 측에서 평가됩니다. 사용자가 페이지에서 해당 input 요소에 값을 입력하면 PHP 코드가 오래 없어져 더 이상 실행할 수 없습니다.

그러나 클라이언트 측 코드로 href을 수정할 수 있습니다. 당신이 jQuery를 사용하는 경우 예를 들어, 당신은 다음과 같이 할 수있다 :이 링크를 클릭을 차단

<div class="col-lg-4"> 
    <input type="text" name="storename" value="" class="validate[required] form-control" placeholder="Store name"> 
    <a class="btn btn-danger" href="store.php">&nbsp;&nbsp;&nbsp;Search Store&nbsp;&nbsp;&nbsp;</a> 
</div> 
<script type="text/javascript"> 
    $('a.btn-danger').click(function() { 
     window.location.href = $(this).attr('href') + '?name=' + $(this).prev('input').val(); 
    }); 
</script> 

을 수동으로 사용자의 입력 값으로 링크 + 쿼리 문자열 값으로 윈도우의 위치를 ​​설정 이전 텍스트 입력에서.

+0

편집을 확인하고 있습니다. 나는 이것을 시도했지만 herf가 추가되지 않습니까? name = etc –

+0

@MuhammadUmar : jQuery를 참조하고 있습니까? 그렇지 않다면 추가하거나 일반 JavaScript (또는 사용하고있는 다른 라이브러리)에서이 작업을 수행해야합니다. 자바 스크립트 콘솔에 오류가 있습니까? JavaScript 디버거를 사용하여이 함수에 디버깅 중단 점을 넣으면 예상 한 값을 찾습니까? – David