2012-06-25 1 views
0

jp.net에서 asp.net 컨트롤을 사용하지 않도록 설정할 때 왜 코드 뒤에 인식되지 않는지 궁금합니다. 예를 들어 I는 다음과 같이 몇 가지로 텍스트 상자를 비활성화 :jquery에 의한 제어 기능 변경이 코드 숨김에서 인식되지 않습니다.

$('#txtNumber').attr('disabled', true); 

이 불가능 클라이언트 sdide에 좋은,하지만이 뒤에 코드에서 인식되지 않고 그것이 = true를 사용하고있다.

이 문제를 해결하는 방법을 모르겠습니다.

편집 : 나는 JQuery와에 의해 컨트롤을 사용하지 않도록 설정하는 방법을 알고 이 경우 아니에요, 난 여전히 코드에서 클라이언트 측에서 그것을 사용하지 않는 경우 사실 enablity을 가지고 뒤에 왜 내 질문은?

답변

1

서버 쪽 (사용/사용 안 함)의 컨트롤 상태는 포스트 백이 발생할 때 viewstate에서 가져옵니다. 클라이언트 측 입력 요소를 비활성화하면 양식을 제출할 때 입력 값이 무엇이든간에 포스트 백의 일부로 브라우저에서 전송되지 않습니다.

입력 요소가 비활성화되어 있으므로 "다시 게시 안함"을 의미합니다. 클라이언트 측에서 그것을 변경해도 viewstate는 그에 따라 업데이트되지 않습니다. 서버 측에서 변경하면 viewstate는 비활성화 된 정보를 갖게되고 다시 포스트 백간에 유지됩니다.

+0

짐작할 수 있겠지만 해결책이 있습니까? – Mostafa

+0

나는 "즉시 생각할 수있는"하나의 라이너가 없다. 당신은 장애가있는 대신 읽기 전용으로 만들 수 있습니다. 그렇다면 포스트 백의 일부가 될 것입니다 (당신은 그것으로부터 가치를 얻을 수 있습니다). 하지만 여전히 포스트 백 이후에 읽기 전용 상태가 유지되도록 상태를 변경하지는 않습니다. 그것은 내가 생각하는 서버 측에서 수행되어야하며 언제 발생해야하는지 감지해야합니다. – user1429080