Thursday, April 26, 2007
Validators inside UpdatePanel won't work as expected
If you work with controls such as .NET Validators placed inside an UpdatePanel you probably know they won't work as expected.
Until Microsoft will solve this issue you can use the "ASP.NET AJAX Validators" that can be download from here:
1) Site 1: http://blogs.msdn.com/mattgi/attachment/1516974.ashx
2) Site 2: http://forums.asp.net/forums/storage/1007/1545781/Validators.zip
More information on asp.net forums
I hope it helps :-)
Bye Rotem
Controls that Are Not Compatible with UpdatePanel Controls
The following ASP.NET controls are not compatible with partial-page updates, and are therefore not supported inside an UpdatePanel control:
Web Parts controls. For more information, see ASP.NET Web Parts Controls.
FileUpload controls when they are used to upload files as part of an asynchronous postback.
GridView and DetailsView controls when their EnableSortingAndPagingCallbacks property is set to true. The default is false.
Login, PasswordRecovery, ChangePassword, and CreateUserWizard controls whose contents have not been converted to editable templates.
The Substitution control.
Validation controls, which includes the BaseCompareValidator, BaseValidator, CompareValidator, CustomValidator, RangeValidator, RegularExpressionValidator, RequiredFieldValidator, and ValidationSummary control.
Controls that are incompatible with partial-page rendering can still be used on a page outside UpdatePanel
controls. Additionally, in some cases you can use the controls in a
specific way to make them compatible with partial-page updates. For
example, you can use the Login, ChangePassword, or PasswordRecovery controls inside an UpdatePanel
control if you can convert their contents to templates. (If you are
using Visual Studio, in Design view you can convert the controls by
using smart-tag menu commands such as Convert to Template or Customize Create User Step.)
When you convert these controls into editable templates, the validation
controls that are used in the control are defined declaratively by
using markup in the page. To make the validators compatible with an UpdatePanel control, set the EnableClientScript property of the validators to false.
This disables the client script that would ordinarily be used to
perform validation in the browser. As a result, during an asynchronous
postback, the validators perform validation on the server. However,
because only the content of the UpdatePanel is refreshed, the validators can provide the kind of immediate feedback that is ordinarily provided by client script.
To use a FileUpload control inside an UpdatePanel control, set the postback control that submits the file to be a PostBackTrigger control for the panel.
All other controls work inside UpdatePanel controls. However, in some circumstances, a control might not work as expected inside an UpdatePanel control. These circumstances include the following:
Registering script by calling registration methods of the ClientScriptManager control.
Rendering script or markup directly during control rendering, such as by calling the Write(String) method.
If the control calls script registration methods of the ClientScriptManager control, you could use corresponding script registration methods of the ScriptManager control instead. In that case, the control can work inside an UpdatePanel control.
Saturday, April 14, 2007
Prototype Library that helps store JSON data in cookies
The nice library is built on top of Prototype and gives you a simple API to put and get JSON values into cookies.
Full information and download:
Yummy JSON Cookies (using Prototype)
Code Example:
var jar = new CookieJar({
expires:3600, // seconds
path: '/'
});
var dog = {name: 'Jacky', breed: 'Alsatian', age:5};
jar.put('mydog', dog);
mydog = jar.get('mydog');
alert("My dog's name is " + mydog.name);
alert("He is " + mydog.age + " years old");
alert("He is an " + mydog.breed);
Enjoy :-)