0

aspx 페이지에서 ascx 컨트롤로 마이그레이션 할 때 상당량의 헤더 포함을 codebehind로 이동하고 있습니다.이를 RegisterClientScriptBlocks로 래핑하고 linq를 사용하여 큰 multiline을 깔끔하게 유지했습니다.RegisterClientScriptBlock CDATA 인라인 선언

그러나 인라인 선언 <%serverside.code%>이 실행되지 않는 것을 확인했습니다.

ClientScript.RegisterClientScriptBlock(GetType(Page), "test", <a><![CDATA[ 
     <script type="text/javascript"> 
      testValue = '<%=Page.Title%>'; 
     </script>]]></a>, True) 

생산물; 나는 .Value와 CDATA 블록을 종료하고 코드 변수를 추가

<script type="text/javascript"> 
    testValue = '<%=Page.Title%>'; 
</script> 

답변

0

는이 문제를 해결하려면 다음 여러 문

ClientScript.RegisterClientScriptBlock(GetType(Page), "test", <![CDATA[ 
    <script type="text/javascript"> 
     testValue = ']]>.Value + Page.Title + <![CDATA['; 
     //more code 
    </script> 
    ]]>.Value, True) 
의 나머지 부분과 새로운 CDATA 블록을 시작