2013-02-12 3 views
5

드롭 다운에서 선택한 옵션에 따라 데이터가 동적으로 채워지는 테이블을 포함하는 양식이 있습니다.PHP 아약스를 사용하여 테이블 내용 새로 고침

드롭 다운에는 2 개의 값 "enabled"와 "disabled"가 있습니다. 표의 각 행의 첫 번째 열에는 확인란이 있습니다. 테이블 구조는 다음과 같습니다.

[checkbox ]| user | status 

[checkbox1]| jim | enabled 

[checkbox2]| sam | disabled 

확인란의 값은 userid와 같습니다.

선택한 사용자의 상태를 변경하는 버튼이 있습니다.

클릭하면 선택한 체크 박스 값이 아약스를 사용하여 게시되고 선택한 사용자의 상태는 변경되지만 데이터는 페이지 새로 고침시에만 새로 고침됩니다.

상태가 변경되면 어떻게 테이블을 새로 고칠 수 있습니까? 여기에 내 대본이있다.

여기서 #table은 데이터를 포함하는 테이블의 ID입니다.

+0

$ ('# response_div_id')를 사용하십시오 .html (ajax response); – ripa

+1

@ripa : 이것을 사용하여 Dosent가 div에 대한 응답을 추가합니까? 여기 내 응답이 true 또는 false입니다 changeStatus에 – Avinash

+0

변경된 상태를 에코 및 상태 div에 넣어. 성공 : 함수 (결과) {$ ('# response_div_id') .html (결과); }); – ripa

답변

2

PHP 파일 자체에서 현재 상태로 테이블을 구성해야합니다. 그런 다음 응답으로 보낼 수 있습니다. Jquery AJAX 응답에서 이와 같이 추가해야합니다.

$(".table").html(resultTable); 

resultTable은 PHP 파일에서 전달하는 응답입니다. 이 작업 만 원하는 경우 업데이트 된 상태로 테이블을 가져올 수 있습니다.

+0

이것을 사용하는 Dosent가 div에 대한 응답을 추가합니까? 여기 내 반응이 참이거나 거짓이됩니다. – Avinash

+1

사실이라면 데이터를 게시하지 않고 새로 고침 페이지처럼 할 수 있습니다. 이전에 location.reload()를 사용했지만 양식이 다시 재전송되고 Firefox에서 재 호출 페이지 infoemation 경고가 성가신다고합니다. – Avinash

+0

어떻게 다시로드하지 않고 새로 고침을 할 수 있습니까? "changeStatus"컨트롤러에서 결과를 전달하고 여기에 테이블을 구성하거나 컨트롤러에서 구성하고 응답을 전달하십시오. 그런 다음 기존 테이블을 구성된 테이블로 교체하십시오. –