프로그램은 수정되지 않고 정상적으로 실행되고 있었습니다. 어느 날 갑자기 동료로부터 오류가 발생했다는 연락을 받았습니다. 검사 결과, 전송된 데이터에 # 등의 특수 문자가 나타나는 것으로 나타났습니다. 브라우저는 # 기호 이전의 데이터만 검색하고 그 이후의 데이터는 잘렸습니다. 그러다가 처음에는 Server.UrlEncode 메서드를 사용하여 데이터를 인코딩하려고 생각했습니다. 특수 문자가 인코딩된 것을 볼 수 있지만 여전히 올바른 데이터가 전달되지 않고 오류가 남아 있습니다.
"JavaScript:window.showModalDialog('Info .aspx? bh=" Server.UrlEncode(e.Row.Cells.FromKey("number").Text.Trim()) "',null,'dialogWidth:750px;dialogHeight:500px;center:yes;status:no ;크기 조정 가능: 예;');"
Escape 메서드를 사용한 후 매개 변수가 정상적으로 전달됩니다.
"JavaScript:window.showModalDialog('Info.aspx?bh=' escape("" e.Row.Cells.FromKey("number ").Text.Trim( ) ""),null,'dialogWidth:750px;dialogHeight:500px;center:yes;status:no;resizing:yes;');"
그러나 만약 모달 창을 사용하지 않고 직접 Server.UrlEncode를 사용하여 링크 주소를 열면 문제가 없습니다. 누군가 나에게 조언을 해줄 수 있습니까?