기본적으로 GridView와 HiddenField로 구성된 UserControl을 UpdatePanel에 포함하는 ModalPopupExtender가 있습니다. HiddenField는 선택된 행의 번호를 저장합니다. 이렇게하면 행을 선택할 때 포스트 백을 방지 할 수 있습니다.
ModalPopupExtender에는 GridView의 행을 선택하지 않을 때 사용할 수 없도록 설정하려는 일부 버튼이 포함되어 있습니다. 따라서 다음과 같은 자바 스크립트는 pageLoad() 메소드에서 실행됩니다ASP.NET GridView를 표시하려면 마우스 이동이 필요합니다.
function trackSelection()
{
var hf = $get('<%= SXGVSavedTemplates.ClientID %>'+ '_hfSelected');
if(hf != null)
{
hf.onpropertychange = function()
{
var btnOk = $get('<%= btnLoadTemplateOK.ClientID %>');
var btnDelete = $get('<%= btnLoadTemplateDelete.ClientID %>');
var hfSelected = $get('<%= SXGVSavedTemplates.ClientID %>'+ '_hfSelected');
var disabled = (hfSelected.value == "");
if(btnOk != null)
{
btnOk.disabled = disabled;
}
if(btnDelete != null)
{
btnDelete.disabled = disabled;
}
}
}
}
지금이 완벽하게 잘 작동합니다. ModalPopup이 표시되면 버튼이 비활성화됩니다. 행을 선택하자마자 버튼이 활성화됩니다. 이것은 위대합니다. 그러나 문제는 GridView가있는 UserControl이 사라진다는 것입니다. 브라우저 창 크기를 조정하면 다시 나타납니다.
Ajax Control Toolkit 라이브러리의 CTP 버전이 프로젝트에서 사용되는 이유는 무엇입니까 (이유는 묻지 마십시오). 이것이 문제가 될 수 있습니까?
나는 어떤 제안이라도 고맙게 생각합니다.