2012-06-12 2 views
3

asp.net .ww3.5로 일부 비디오를 표시하는 페이지를 개발 중입니다. 페이지에 미리보기 이미지가있는 동영상 목록이 표시됩니다. 사용자가 비디오 엄지를 클릭하면 나는 팝업을 열고 팝업에 비디오를 보여줄 것이다. 비디오에는 등급 제어 기능이 있습니다. 사용자는 ajax 등급 제어를 사용하여 비디오에 투표 할 수 있습니다. 등급 제어가 클릭 된 후에도 팝업이 계속 표시되어야합니다.팝업에서 Ajax 등급 컨트롤

코딩 중 일부를 수행했지만 문제는 포스트 북을 수행하지 않고 등급 제어의 현재 등급을 가져올 수 없다는 것입니다. 업데이트 패널을 사용하여 팝업을 항상 볼 수있게 할 수 있지만, 그렇게하면 모달 popupextender의 닫기 버튼이 작동하지 않고 모달 팝업을 닫을 수 없습니다. 다음은 관련 코드 부분입니다.

<asp:Button ID="Button1" runat="server" Style="display: none" />  
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" OkControlID="btnOkay" 
    TargetControlID="Button1" PopupControlID="Panel1" PopupDragHandleControlID="PopupHeader" 
    Drag="true" BackgroundCssClass="ModalPopupBG"> 
</asp:ModalPopupExtender> 
    <asp:Panel ID="Panel1" runat="server" CssClass="PopupCss"> 
    <table style="width: 100%; height: 100%;"> 
     <tr> 
      <td> 
       <div id="mediaplayer"> 
        JW Player goes here</div> 
       <script type="text/javascript"> 
        jwplayer("mediaplayer").setup({ 
         flashplayer: "jwplayer/player.swf", 
         file: "<%=videoName %>", 
         image: "<%=videoThumb %>", 
         width: "100%", 
         height: "100%" 
        }); 
       </script> 
      </td> 
      <td valign="top" align="left" style="text-align: left;"> 
       <div class="fb-like" data-send="true" data-layout="button_count" data-show-faces="true"> 
       </div> 
       <br /> 
       <div class="fb-comments" data-href="<%=videoLink%>" 
        data-num-posts="3" data-width="470"> 
       </div> 
       <br /> 
       <br /> 
       <br /> 
       <!-- AddThis Button BEGIN --> 
       <div class="addthis_toolbox addthis_default_style "> 
        <a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"> 
        </a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"> 
        </a><a class="addthis_button_compact"></a><a class="addthis_counter addthis_bubble_style"> 
        </a> 
       </div> 
       <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=ra-4f61d99d08697325"></script> 
       <!-- AddThis Button END --> 
       <br /> 
       <br /> 
       <asp:Rating ID="Rating1" runat="server" MaxRating="5" StarCssClass="ratingStar" FilledStarCssClass="ratingStarFilled" 
        AutoPostBack="true" OnChanged="VideoRatingChanged" EmptyStarCssClass="ratingStarEmpty" 
        WaitingStarCssClass="ratingStarEmpty"> 
        <asp:HiddenField ID="HiddenField1" runat="server" Value='<%=videoId%>' /> 
       </asp:Rating> 
       &nbsp (<%=voteCount%>) 
       <br /> 
       Minder Score: 
       <%=minderScore %> 
       <br /> 
       <div class="Controls" style="text-align: left;"> 
        <input id="btnOkay" type="button" value="Kapat" /> 
       </div> 
      </td> 
     </tr> 
    </table> 
</asp:Panel> 

원하는 기능을 어떻게 관리 할 수 ​​있습니까? 도움이 될 것입니다. 감사

답변

1

가장 쉬운 방법은 당신이 UpdatePanel 내부를 포함 할 경우 asp:literal으로 변경해야합니다, 총 투표 수의 일부에 대한 UpdatePanel

<br /> 
     <asp:UpdatePanel runat="server" ID="up1"> 
      <ContentTemplate> 
       <asp:Rating ID="Rating1" runat="server" MaxRating="5" StarCssClass="ratingStar" FilledStarCssClass="ratingStarFilled" 
        AutoPostBack="true" OnChanged="VideoRatingChanged" EmptyStarCssClass="ratingStarEmpty" 
        WaitingStarCssClass="ratingStarEmpty"> 
        <asp:HiddenField ID="HiddenField1" runat="server" Value='<%=videoId%>' /> 
       </asp:Rating> 

      </ContentTemplate> 
     </asp:UpdatePanel> 

으로 워프하는 것입니다 제어하고,이 컨트롤 내부에 결과를 렌더링합니다. 당신이 자동으로 업데이트를 들면,

&nbsp (<%=voteCount%>) 
<br /> 
Minder Score: 
<%=minderScore %> 

을 UpdatePanel 내부에이 코드를 포함 할 경우 그래서 당신은

&nbsp (<asp:Literal runat="server" id="txtVoteCount" />) 
<br /> 
Minder Score: <asp:Literal runat="server" id="txtMinderScore" /> 

으로이 값 장소 뒤에 코드를 작성해야합니다. 이 샘플을 http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/Rating/Rating.aspx

을 확인하고 SDK에서 소스 코드를 얻을 경우

,이 방법은 그 일이다.