This article is currently in the process of being translated into Czech (~99% done).
Hello, world!
Jako obvykle, použijeme starý dobrý "Hello, world!" jako svůj první příklad. Začneme s kódem a pak jej trochu vysvětlíme. Jestli jste tak už neudělali, vytvořte nový ASP.NET webový projekt ve Visual Studiu 2012. Integrované prostředí pro vás vytvoří Default.aspx a Default.aspx.cs soubory, které dohromady vypadají jako jakákoli jiná ASP.NET stránka. Přidejme do ní AJAX.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Hello, world!</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="MainScriptManager" runat="server" />
<asp:UpdatePanel ID="pnlHelloWorld" runat="server">
<ContentTemplate>
<asp:Label runat="server" ID="lblHelloWorld" Text="Click the button!" />
<br /><br />
<asp:Button runat="server" ID="btnHelloWorld" OnClick="btnHelloWorld_Click" Text="Update label!" />
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
V kódu níže není nic nového, jen pro tuto událost je třeba přidat:
protected void btnHelloWorld_Click(object sender, EventArgs e)
{
lblHelloWorld.Text = "Hello, world - this is a fresh message from ASP.NET AJAX! The time right now is: " + DateTime.Now.ToLongTimeString();
}
V části markup ( html ) použijeme dvě nové věci vzhledem k normálnímu ASP.NET: ScriptManager control a UpdatePanel control. ScriptManager zajistí, aby se začlenily požadované ASP.NET AJAX soubory a aby byla přidána také podpora AJAXu. Ta musí být zahrnuta na každé stránce, na které chcete použít funkcionalitu AJAXu,
Po managerovi zde máme ještě jeden z nejpoužívanějších prvků při práci s AJAXem - UpdatePanel. Tento prvek vám umožňuje v html části vyčlenit část, kterou budete chtít dynamicky upravit, tedy upravit bez opravdového celého postbacku ( zaslání ) na server. Více se o UpdatePanelu dozvíte v příští kapitole. Kromě těchto dvou prvků jsou jinak vše standardní prvky bez jakékoli úpravy, která by inikovala jiné chování.
Zkuste spustit příklad stránky a klikněte na tlačítko. Label se změní na náš Hello world text spolu s časem. Zkuste opakovaně klikat na tlačítko a uvidíte, že label pokaždé změní čas. Všimněte si té nádherné abzence blikajícího okna a běžící stavové lišty - všechno se udá bez jakékoli změny čehokoli kromě labelu! Právě jsme vytvořili naši první stránky s umožněním AJAXu. Jestli si přejete vidět, jak stránka pracuje bez AJAXu, nastavte "enablepartialrendering" ScriptManagera na false takto:
<asp:ScriptManager ID="MainScriptManager" runat="server" enablepartialrendering="false" />
Tato úprava znemožní použití částečného překladu stránky a ukáže vám, jak to pracuje bez AJAXu.
V následujících kapitolách se podíváme blíže na různé AJAX prvky a na způsob jejich použití