我有一箇中繼器的asp.net web窗體。在這個轉發器是多個控件,我影響到這些控件與ItemCreated事件的JavaScript函數。我用這種代碼製成這樣:爲什麼我的updatepanel會生成數百個腳本塊?
btnBareme.OnClientClick = string.Format("ChangeBareme('{0}','{1}',this); return false", item.Num_dossier, item.IdDemande);
JavaScript函數「changeBareme()」中的頁的標頭中定義。它工作正常,但我需要獨立於頁面的其他元素更新中繼器。
因此,我用一個asp:UpdatePanel環繞中繼器。這樣的事情:
<asp:UpdatePanel ID="UpdatePnl2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div>
<h1>Foo</h1>
</div>
<div>
<asp:Repeater runat="server" ID="rptFoo" OnItemCreated="rptFoo_ItemCreated" OnItemCommand="rpt_ItemCommand">
<HeaderTemplate>
<table id="TabRep" class="DataRepeater">
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<tr>
SomeContent Here with controls
</tr>
</ItemTemplate>
<FooterTemplate>
</tbody>
</table>
</FooterTemplate>
</asp:Repeater>
<br/>
</div>
</ContentTemplate>
</asp:UpdatePanel>
那裏..它不會工作。在UpdatePanel外頁的控制失去了他們的狀態和在調試模式下,有數百生成的「腳本塊」的..
我的問題是,我真的不很明白的UpdatePanel如何與處理JavaScript裏面。所以我需要更多有經驗的人的建議。我怎樣才能使這個更新面板有效?什麼是數百個腳本塊?我需要使該中繼器在頁面的其餘部分更加「獨立」。
在此先感謝。
你是什麼意思的「控制頁面外的更新面板失去了他們的國家」?你可以說得更詳細點嗎? –
如果你想要你的應用程序是'獨立的',擺脫asp.net控件並使用/編寫自己的代碼。我喜歡.net頁面,沒有多行視圖狀態數據... –
@Shadow Wizard;在頁面(中繼器外面)是一些checkBoxes控件。更新updatePanel後,所有複選框都未選中。 – bAN