[英]Ajax Rating control in popup
我正在開發一個頁面,用asp .net fw3.5顯示一些視頻。 該頁面將顯示帶縮略圖的視頻列表。 當用戶點擊視頻拇指時,我將打開彈出窗口並在彈出窗口中顯示視頻。 視頻中將有一個評級控件。用戶可以使用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>
  (<%=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>
我怎樣才能設法獲得所需的功能。 任何幫助將不勝感激。 謝謝
最簡單的方法是使用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>
對於總投票數的部分,如果您想將其包含在UpdatePanel中,則需要使用asp:literal
控件進行更改,並在此控件內部渲染結果。 因此,如果您想在UpdatePanel中包含此代碼,以便自動更新它們,
  (<%=voteCount%>)
<br />
Minder Score:
<%=minderScore %>
你需要把它寫成
  (<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獲取源代碼,這是這樣做的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.