2012-11-25 3 views
0

내가 양식 양식제출 후 양식을 새로 고침하려면 어떻게해야합니까?

<form id="abc"> 
<div> 
<select > 
<option id= "1"> ha1 </option> 
<option id= "1"> ha2 </option> 
<option id= "1"> ha3 </option> 
<option id= "1"> ha4 </option> 
</select> 
<input type="submit"> 
</div> 
</form> 

처럼이 내가 여기

$(document).ready(function() { 

     $('#abc').submit(function(){ 

      $.post('filter.php', $(this).serialize(), function(data){ 

      $('#abc').reset(); //(this).reset(); 

      });    

      return false; 


     }); 

    }); 

리셋처럼 사용하고 작동하지 않는 제출합니다. 재설정과 관련된 문제가 발생하지 않습니다. 양식을 제출 한 후 db 값으로 양식을 새로 고침하여 (지금 선택된 값을 표시하려는 경우)

제출 후 페이지를 새로 고치거나 div를 새로 고침하는 방법은 무엇입니까? 그런데

parent.document.getElementById("abc").reload(); 

: 내가 당신의 서버 측 코드를 참조하면 그나마 실제 일 :

또는 당신이 사용할 수에 href를 설정하여

답변

0
$(document).ready(function() { 
    $('#abc').submit(function(){ 
     $.post('filter.php', $(this).serialize(), function(data){ 
     window.location.href=window.location.href; 
     });    
     return false; 
    }); 

}); 

는 다시로드 페이지를 선택한 값을 렌더링해야합니다. 물론 당신이 반환한다고 가정 할 때, 내 대답은 서버 측 장면을 덮지 않습니다. 내 코드는 db에 저장 한 후 서버에서 선택한 값을 반환하는 경우에만 해당합니다.

0

서버 측 코드를 소유하고있는 경우 응답의 값을 반환 한 다음 콜백에 이러한 값으로 필드를 채울 수 있습니다.

의이 당신의 응답 JSON입니다 가정 해 봅시다 :

{ 
    data: [{ 
      "username": "john doe" 
    }] 
} 


$('#abc').submit(function(){ 
    $.post('filter.php', $(this).serialize(), function(data){ 

     $('#abc').reset(); //(this).reset(); 

     $('input#username').val(data.username); 
    });    

    return false; 
}); 
0

바와 같이 doniyor으로 대답 페이지를 새로 고침 window.location.href를 사용했다,하지만이 값으로 양식을 채울 수 없습니다 방금 데이터베이스에 썼습니다.

양식을 데이터베이스로 채우는 데 사용할 수있는 두 가지 옵션이 있습니다. 두 가지 옵션 모두 구현하는 것이 좋습니다 (최대).

첫 번째는 html을 처음로드 할 때 양식을 채우는 것입니다.

<input type="radio" selected="selected" /> 

다른 옵션은 jquerys와 체크 박스 비동기를 설정하는 것입니다 :이 데이터베이스에 쿼리를 만들고 값을 받고, 다음과 같이 값에 따라 올바른 라디오 버튼을 설정하여 서버 측을 수행 할 수 있습니다 .prop() 메소드. 이렇게하려면 태그에 고유 ID가 있어야합니다 (어쨌든 가져야 함). 예 :

$("#yourIDHere").prop('checked',true); 

후자의 경우 올바른 ID를 출력하도록 게시 할 수 있습니다. 이것은 귀하의 재량에 달려 있으며, 귀하의 사건에 달려 있습니다. 그러나이 답변이 당신을 올바른 방향으로 안내해 주길 바랍니다.

안부

0

이 사용하려고

$('#abc').submit(function(){ 
    $.post('filter.php', $(this).serialize(), function(data){ 

     $('#abc').find('input:text, input:password, input:file, select, textarea').val(''); 
     $('#abc').find('input:radio, input:checkbox') 
     .removeAttr('checked').removeAttr('selected'); 

    });    

    return false; 
}); 
관련 문제