2012-06-25 4 views
0

에 대해 발생 게시 후 나는이 시나리오를 텍스트 변경을 관리 할 AutoPostBack을 = 사실 및 서버 측 코드이벤트는 다른 제어

텍스트 상자를 잃었다.

서버 측에서 확인하고 관리 할 코드가있는 버튼입니다. btnSend.Attributes.Add ("onClick", "확인 확인 ('메시지 확인')"); , 텍스트 상자에 포커스를두고 버튼을 클릭 whithout 사용자가 텍스트 상자에 쓰기 할 때 ....

모두가 UpdatePanel

안에, 확인이 나타나고 inputTextAnswer_TextChanged 뒤에 제기되고 실행. 그런 다음 페이지는 포스트 백을 처리하므로 확인시 '확인'을 클릭하면 아무 것도 실행되지 않습니다. 버튼 코드를 실행하려면 다시 클릭해야합니다.

inputTextAnswer_TextChanged 코드 (먼저 실행해야 함)를 실행 한 다음 버튼 코드를 실행하는 방법이 있습니까? 중요 : 항상 사용자가 텍스트 상자 필드를 채운 다음 버튼을 클릭 할 때마다 하나씩 차례로 실행해야하는 것은 아닙니다.

답변

0

어포레인에 동일한 문제가있는 경우 제 해결책입니다. 버튼에 대한 반환과 관련된 확인을 남겨 두는 대신 자바 스크립트로 수동으로 포스트 백을 수행하십시오. 그런 다음 텍스트 상자 변경 이벤트가 실행되고 사용자가 '확인'을 클릭하면 다시 게시하고 버튼 코드를 실행합니다.

영문에 서버 측

btnSend.Attributes.Add("onClick", "confirmSend();"); 

이에이 코드 조각

<script> 
function confirmSend() { 
    var agree = confirm('confirm message'); 
    if (agree) { 
     __doPostBack('btnSend', ''); 
    } 
    } 
</script>