2011-04-11 4 views
0

asp.net 버튼에서 javaScript로 포스트 백 (post-back) 프로세스를 일시 중지하고 일부 작업이 완료된 후 어떻게 계속할 수 있습니까? 같은asp.net 버튼에서 포스트 백을 일시 중지하고 일부 작업이 완료된 후 계속할 수 있습니까?

뭔가 :

btnRemove.Attributes["onclick"] = string.Format(@" 

var itemId=$.trim($('#{0}').val());        

// stopPostBack() somehow 

// do some stuff with itemId 

// continue post-back 

", txtMyTextBox.ClientId); 
+0

의존 - 'itemId'로 무엇을하고 싶습니까? –

+0

사실 내 문제는 선택이 어떻게 든 처리 속도가 느리다는 것입니다. 관련 포스트 텍스트를 보내기 전에 포스트 백이 발생합니다. (String.Format 부분을 삭제했습니다.) – pencilCake

+0

무엇을 선택합니까? 어떤 텍스트 상자? 아직 명확하지 않습니다. 죄송합니다. :/ –

답변

0

예, 당신이 할 수있는 트릭으로 생각합니다.

포스트를 피하기 위해 false를 반환하고, 작업을 수행하는 다음 함수를 호출하는 타이머를 초기화하고, 마지막에는 수동으로 포스트를 다시 시작합니다.

0

예, 자바 스크립트 onclick 이벤트에서 false를 반환하면됩니다.

예 :

<asp:LinkButton ID="btnDelete" runat="server" 
               CommandArgument='<%# DataBinder.Eval(Container,&#13;&#10;"RowIndex") %>' 
               CommandName="Delete" Text="Delete" 
               onclientclick="return confirm('Are you sure you want to delete this Connection?');" 
               ToolTip="Delete the connection" /> 
2

모든 온 클릭() 이벤트 코드를 제출하기 전에 처리됩니다. onClick 이벤트 핸들러가 false를 반환하면 이벤트는 코드를 실행 한 다음 제출하지 못합니다. true를 반환하면 코드를 실행 한 다음 제출합니다.

포스트 백을 "중지"할 필요가 없다고 생각합니다. true로 돌아 가기 전에 원하는 코드를 넣으면 제출 전에 실행됩니다.

예 :

btnRemove.Attributes["onclick"] = @" 

var itemId=$.trim($('#{0}').val()); 

alert(itemId); 

return true; 

"; 

여기 alert() 제출하기 전에 실행됩니다.

+0

+1 이것도 맞습니다. – Aristos

관련 문제