2015-01-08 3 views
2

아래와 같은 jQuery ajax 서비스 호출이 있습니다. 사용자가 편집 대화 상자에서 확인을 클릭 할 때 호출됩니다. 대화 상자에는 사용자가 웹 폼의 단락 섹션 내용을 편집하는 데 사용해야하는 텍스트 상자가 있습니다.데이터베이스 업데이트 직후에 UI를 업데이트하는 가장 좋은 방법은 무엇입니까? (ASP.NET 및 JQuery)

//Example of my real call 
function testService(test) { 
var person = {}; 
person.ID = 1; 
person.name = "Albert"; 
$.ajax({ 
    type: "POST", 
    url: "WebService1.asmx/HelloWorld", 
    dataType: "json", 
    data: "{person:" + JSON.stringify(person) + "}", 
    contentType: "application/json; charset=utf-8", 
    success: function (response) { 

    }, 
    error: function(response) { 
     alert(response.d); 
    } 
}); 
} 
  1. 그래서 순서대로 웹 페이지에 사용자가 클릭의 편집 버튼은 웹 양식에 단락을 편집 할 수 있습니다.
  2. 단락의 내용이있는 대화 상자가 열립니다.
  3. 사용자가 변경 사항을 적용하려면 확인을 클릭하십시오.
  4. 서비스는 jQuery ajax 호출을 통해 호출됩니다.
  5. 변경 사항은 webmethod를 통해 데이터베이스에 커밋됩니다.

클라이언트 업데이트를 수행하지 않아 문제가 webform 단락 섹션이 새로 업데이트 된 값으로 업데이트되지 않습니다.

질문 : DB에서 새로 업데이트 된 문자열로 클라이언트를 새로 고치는 가장 좋은 방법은 무엇입니까? DB에서 값을 얻기 위해 다른 웹 서비스 호출을해야합니까? 오랜 시간이 걸릴 수 있고 불필요하다는 것을 알고 있습니다.이 작업을 수행하는 데있어 jQuery 트릭이 있습니까? 전체 페이지가 아닌 해당 단락 섹션 만 새로 고침합니다.

+0

업데이트 된 값 또는 성공을 얻기 위해 다른 호출을 할 수 있습니다. 함수를 사용하면 단락의 새 값을 표시 할 수 있습니다. – causita

답변

3

POST에서는 업데이트 한 전체 개체를 클라이언트에 반환해야합니다. 그런 다음 서버의 응답을 사용하여 웹 페이지를 업데이트하십시오.

이렇게하면 DB가 ID 생성 날짜 등 개체에 몇 가지 정보를 추가 할 책임이 있습니다. 그러면 POST가 성공했을 때 클라이언트 측에서 업데이트 된 개체를 갖게됩니다.