Debugga AJAX med Nikhil's Web Development Helper

Att programmera AJAX är roligt, men när något går fel är det inte lika kul längre. Den vanliga tracern i .NET går ju inte att köra samtidigt. Sökte lite efter tips hur man kunde felsöka lättare och hittade ScottGu's inlägg om Nikhil's Web Development Helper.

Det handlar om ett suveränt tillägg till Internet Explorer som är till stor hjälp när man felsöker Ajax-applikationer. Läs mer om det hos Nikhil och kolla även in dokumentationen (PDF).

By Jesper Lind

Ny release av AJAX Control Toolkit

För en vecka sen släpptes en ny version AJAX Control Toolkit. Läs om vad som är förbättrat i denna version 10301.

Två nya kontroller finns med i paketet. Dels SlideShow som visar bilder och kan kopplas mot en webservice.

Sen även ListSearch som jag verkligen gillar. Här kan man söka i en Dropdownlista med knapptryckningar. Är en bra lösning på detta problemet som jag belyst tidigare.

By Jesper Lind

TinyMCE med AJAX och partial update

Uppdatering! Jag har nu gjort ett fullständigt exempel på hur man kan använda TinyMCE med Ajax. Länk finns här.

Har kört ASP.NET AJAX nu i en vecka och testat på UpdatePanels. Jag hade textruta med tillhörande html-editor (TinyMCE) och vid delvis uppdatering så laddades inte editorn igen. Lösningen som funkade för mig hittade jag på Moxiecode.

Först så laddar jag in själva biblioteket vid Page_Load()

//Ladda tinyMCE
HtmlGenericControl IncludeTinyMCE = new HtmlGenericControl("script");
IncludeTinyMCE.Attributes.Add("type", "text/javascript");
IncludeTinyMCE.Attributes.Add("src", "js/tiny_mce/tiny_mce.js");
this.Page.Header.Controls.Add(IncludeTinyMCE);

Efter partial upload på UpdatePanel så kallas följande funktion. Jag fick lägga anropet till den i en specialfunktion för animeringen av min UpdatePanel. Men hos Moxiecode föreslår de följande registrering.

ScriptManager.RegisterClientScriptBlock(UpdatePanel1, this.GetType(), "init", "InitTiny();", true);

I funktionen som ritar om text-editor fick jag även lägga till en extra rad som tar bort editorn efter den körs. Annars ritades en ny upp vid varje uppdatering. Det ser kanske konstigt ut att jag kör "mceRemoveControl" precis efter den lagts till men "mceAddControl", men det var det som funkade i mitt fall.

function InitTiny()
{
tinyMCE.execCommand('mceAddControl', false, 'ctl00$mainContentPH$productTabs$tpProductInfo$fvProduct$textBox');
tinyMCE.execCommand('mceRemoveControl', true, 'ctl00$mainContentPH$productTabs$tpProductInfo$fvProduct$textBox');
}

Sökvägen ser ganska lång ut men det beror på att min textarea låg inne i en Tabs-kontroll.

By Jesper Lind

TydaDirekt - översättning till Internet Explorer

http://www.codeodyssey.se/upload/resource/blog/tyda-opopular.png

Surfade in på Tyda.se som verkar har lanserat lite nyheter alldeles nyligen. Sökrutan för orden är nu utrustad med AJAX-teknik och man får stavningsförslag medan man skriver. Kanonbra.

Man har även gjort ett tillägg till Internet Explorer som man kan översätta ord direkt i webbläsaren med. Tyvärr funka det inte alls för mig. Jag får upp välkomstrutan men det händer ingenting när jag ALT-klickar på ord. Det står i deras hjälpsektion att det är en del problem tillsammans med den nya IE7 som har med flikhanteringen att göra. Ett liknade tillägg utlovas också till andra webbläsare – förhoppningsvis Firefox inräknat.

Lexikonet skryter nu med att vara störst i världen (på svenska-engelska antar man då) och har över en miljon ord uppslagsord.

En kul grej är att man låter användarna föreslå nya ord. Ännu verkar de inte ha börjat med att acceptera förslagen – utan skriver att de väntar på att deras bonussystem ska bli klart. Jag väntar ju på att de ska ta ställning till ifall ordet "opopulär" ska få vara med. "Opolerad" och "opolitisk" duger ju, så varför inte?

By Jesper Lind

RSS Toolkit - Publicera och konsumera RSS-flöden

Hittade en intressant artikel av Steve Clements där han visar hur man kan bygga en RSS-läsare för att lägga in på en webbplats. Den använder AJAX-funktioner för att öppna inläggen när man läser dem. Till kodexemplet används ett speciellt RSS Toolkit som finns att läsa om på Dmitry’s blog. Där finns även en zip-fil med verktygslådan att ladda hem.

Har inte testat den själv men det verkar intressant, skriv gärna en kommentar ifall du provar på detta. Är jättenyfiken på hur det fungerar.

Man kan också läsa samma artikel om RSS-läsaren på The Code Project.

By Jesper Lind

ASP.NET AJAX 1.0 levereras i skarp version

http://www.codeodyssey.se/upload/resource/blog/NET-AJAX.png

Nu meddelas fantastiska nyheter i .NET-världen, ramverket ASP.NET AJAX 1.0 är klart och finns att ladda ner på den officiella hemsidan. Kolla även in dokumentationen som har utökats en hel del sedan beta-versionerna.

I AJAX Control Toolkit har även några nya kontroller lagts till och det finns demonstrationer på AutoComplete, Calendar, MaskedEdit och Tabs.

Så nu är det äntligen läge att börja använda denna nya teknik från Microsoft på sina skarpa projekt, utan att riskera att behöva koda om för förändringar mellan versionerna.

Via: Nikhilk.net

Läs även mer om releasen på Scott Guthries blogg där han förklarar lite om de senaste ändringarna. Värt att notera är att produkten blir historiskt, i den bemärkelsen att det är den första produkten från Microsoft som släpps som öppen källkod. Supporten kommer vara igång 24 timmar om dygnet i åtminstonde 10 år framåt.

By Jesper Lind

Källkod för blogg-system från Castleproject.org

För ett tag sen läste jag att Castle Project går in i version beta 2, blev nyfiken och kollade hemsidan som finns på Castleproject.org. Som ofta när det gäller öppen källkod finns det mycket roligt att läsa om och välarbetade exempel.

På sidan presenteras project som t ex MonoRail (AJAX-ramverk inspirerat av Actionpack Ruby on rails) och ActiveRecord (Implementering av Wiki: Active record pattern).

Just Caste ActiveRecord tyckte jag var väldigt intressant och i handledningen visas ett riktigt bra exempel på hur en blogg-applikation kan konstrueras. Rekommendas till dig som vill lära dig mer om active records eller se hur en bra databasdesign för ett blogg-system kan se ut. Man visar sen klasserna och även hur man lägger till relationerna.

By Jesper Lind

XSS-mask härjade på Gaiaonline.com

Tekniken AJAX (Asynkron JavaScript och XML) används i allt större utsträckning på webbplatser. Baksidan är att detta öppnar upp för en ny typ av attacker kallade XSS (Cross-site scripting).

Idag släpptes en XSS-mask loss på community-sidan Gaiaonline.com och på bara 3-4 timmar infekterades 1500 användare. Läs mer om detta på ha.ckers.org där även källkoden för masken finns att studera.

Att förstå hur dessa XSS-attacker fungerar är väldigt viktigt för alla som jobbar med att utveckla applikationer med AJAX-funktionalitet.

By Jesper Lind