在ASP.NET中點擊按鈕後,我需要一個JavaScript來執行其操作。我試圖OnClientClick
功能,但與此事件的問題是第一OnClientClick
功能發生,然後OnServerClick
功能發生,即第一個JavaScript函數運行,然後C#代碼執行,但我需要以相反的順序首先我需要執行的C#代碼,然後我不得不運行JavaScript。我在我的代碼中使用AJAX.NET和ScriptManager。無論如何,scriptmanager能幫助我嗎?否則如何在服務器端運行JavaScript。在服務器端運行javascript
我需要在下面的方式。
Button1_Click(object sender, EventArgs e)
{
ListBox1.Items.Add(TextBox1.Text); //for example
` here I have to run JavaScript `
}
有什麼辦法來實現這一點?
編輯1:
我需要一個div被onbuttonclick向下滾動(上點擊添加新數據使用的DataBinder和中繼器DIV)。如上所述,clientclick首先運行,但我需要在服務器操作後運行它。
JavaScript是..
<script>
var objDiv = document.getElementById("div1");
objDiv.scrollTop = objDiv.scrollHeight;
</script>
和
<div id="div1"> //css properties height 200 and width 200 overflow:auto
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" />
<asp:Timer ID="Timer1" runat="server" Interval="200" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Repeater id="Repeater1" runat="server" >
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Message") %> <br />
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
</Triggers>
</asp:UpdatePanel>
</div>
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div id="div2">
<asp:TextBox ID="tb_message" runat="server" Width="250px" EnableViewState="false" />
<br />
<asp:Button ID="btn_send" runat="server" Width="250px" Text="Send"
onclick="btn_send_Click" />
</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btn_send" EventName="click" />
</Triggers>
</asp:UpdatePanel>
是回發的AJAX回發或標準回傳? –
如果可能,請提供一些代碼,以便我們可以看到哪種方法適用於您的情況 – danyloid
@danyloid - 添加了代碼。 –