JavaScript: Select With Filtration

A SELECT tag with hundreds options deserves some filtration. Let’s have an extra INPUT to filter the SELECT options by label while the user is typing in. The problem: in Internet Explorer, changing 1000+ SELECT options on the fly is extremely slow... Read further for a solution.

HTML: How to Disable the Submit Button After Submit


<script type="text/javascript">
	function disableFormElements(form){
			for (var i=0; i<form.elements.length; i++) 
			    form.elements[i].disabled = true;
		}, 1);
<form name="formName" action="page.xsp?p1=1&p2=2" method="post" 
onsubmit="if (!ClientValidation()) return false; disableFormElements(this)">

Read further for the explanation.

Layer-based automated testing, part 3: emulating request/response scenarios in tests

This article is about using BDD and SpecFlow for testing request/response scenarios like message boxes, modal windows, interaction with peripheral devices and similar cases. I'm using the sample from previous article but in fact this article is valid for every testing system using BDD and SpecFlow.

Layer-based automated testing, part 2: registration reusable in tests

Previous article contained some general discussion on where the layer-based approach to testing is applicable. Now, let's get into details of implementation. To be able to test layers, you'll need to be able to easily separate them one from another, and easily reuse them as a whole from different entry points (from actual application, from tests, etc).

Layer-based automated testing, part 1: choosing the right testing approach

This is a series of articles about building an effective testing system of larger-scale code-driven tests for your .Net application. It shows how to use such concepts like IoC, MVVM, BDD, mocking and asynchronous programming together to minimize efforts on developing new tests and supporting old ones. Also it gives a working sample of such test-friendly architecture. Of course this approach is not applicable for all cases, but it has proven its effectiveness for many existing scenarios.

Treatment of spaces-only input in ASP.NET MVC

I guess every framework has some kind of bizarre "default" behavior which can cause problems and will require thorough research and experimenting to understand what's going on. For ASP.NET MVC, one of the most stunning examples is its treatment of space symbols in input. It's a real pity that to understand how to deal with this (quite common) problem properly, one needs to do a lot of experimenting and gathering bits and pieces of information from different sources. This article is an attempt to collect this information and express it in more or less coherent way.

BreezeJS and multipart keys

During one of our projects we decided to use a javascript library called Breeze.

Breeze is a very useful library that allows users to work with entities in js and to execute CRUD operations directly from js, almost without writing server code.

Background processes in iOS.

A customer had set the following task: he wanted to receive data to his device from the server in the local network regardless of whether the application was in foreground mode or not.

Previously, the applications were simply killed when the Home button was pressed. But starting with iOS version 4.0, the applications featured a so-called background mode, which automatically pauses all tasks by default (except for those with delays, which should be stopped manually or which will actuate simultaneously in case of return to the application when the delay expires).

In order to execute a code in the background, it is necessary to observe several conditions which the given application should correspond to.


HTML5: Handle With Care

You obviously have met a “Read Carefully” section in virtually any agreement or proposal—whether they were printed or on-line. Despite the appeal, this part is intentionally made unreadable using ALL CAPS or tiny font. Why? It doesn’t that matter as soon as all goes well, but any non-standard move welcomes you to the “Read Carefully” trap – you lost. HTML5 has comprehensive overviews, tutorials, but misses that so vital section. In this article I’ll try to fill in this gap.


Auto resizable spark TextArea (Flex 4).

Creating auto resizable components is a typical and often not a hard task for developer. But there are some problems with TextArea. TextArea automatically displays scrollers when content is too large. The main suggestion in the internet on how to fix it is to add handlers on textChange event and resize TextArea by number of text lines. But it requires manual work every time you use TextArea, so this approach is not optimal. But there is a way to reskin TextArea to obtain autoresize, this way you’ll just need to apply this skin instead of default (or inherit from TextArea and make this new skin default).

Syndicate content