For those of you wondering why this works, here's a simple explanation that is fairly visual and requires no number theory.

Assume that 11 divides a number X, so that X = 11Y for some integer Y. Say for argument that the decimal representation of Y is edcba, i.e. if Y=39452 then e=3, d=9, etc. Now write X = 11Y as the sum Y + 10Y = edcba + edcba0:

   Y:      e   d   c   b   a
+10Y:  e   d   c   b   a   0
=  X:  e  e+d d+c c+b b+a  a

For the moment, assume there is no carry in the above addition. Now split this into odd and even decimal positions (powers of 10):

   Y:      e   d   c   b   a
+10Y:  e   d   c   b   a   0
even:  e      d+c     b+a     = e+d+c+b+a
 odd:     e+d     c+b      a  = e+d+c+b+a

It's easy to see above that the multiplication by 10 followed by adding odd or even decimal places causes each decimal place to appear only once in the sums on the right. In fact, if there is no "carry" when we add, the sums of the even and odd decimal places will be equal, and subtracting them we get 0.

What if there is carry when we add Y and 10Y above? After all if c=6 and b=7 then c+b=13 (not a digit!) and we "carry the one" over to the next place. But then the picture above looks like:

   Y:      e   d     c     b   a
+10Y:  e   d   c     b     a   0
even:  e      d+c+1       b+a     = e+d+c+b+a + 1
 odd:     e+d      c+b-10      a  = e+d+c+b+a - 10

and subtracting the larger of these gives 11, exactly as expected. Obviously this extends by induction to any length number, and any number of carries that can take place, although it points out a case that the above writeup misses: subtracting will give you a multiple of 11, not just 0 or 11, eg: 409090 => 4+9+9 - 0+0+0 = 22.

Note: This isn't technically a proof until you run it backwards. We showed that given a multiple of 11 it has the subtraction-of-digits property. But if you reverse the steps above it's easy to see that the property guarantees that there exists a Y such that X=11Y, which is what we wanted to show.

The exact same argument explains the "rule of nines" -- why a number is divisible by 9 if the sum of its digits is divisible by 9:

 10Y:  e   d   c   b   a   0
  -Y:      e   d   c   b   a
 =9Y:  e  d-e c-d b-c a-b -a  = 0 +9n, where n is a result of carries.

You can play the same sorts of games with 101, 99, etc.

Another test for divisibility by 11 is subtracting the last digit of the number from the "tens part", ie: the number formed by truncating the last digit and dividing by 10. For example: 3795 is divisible by 11 if 379 - 5 = 374 is, which is divisible if 37 - 4 = 33 is.

This is even easier to see than the first property. Let the number we're testing for divisibility X = 11Y for some Y. Rewrite X as 10T + L, where T is the "tens part" and L is the last digit. Then we can restate the above as: X = 10T + L is divisible by 11 if T - L is. But if we add or subtract a multiple of 11 from something and get another multiple of 11, then that something is a multiple of 11, so we need only observe that: (10T + L) + (T - L) = 11T, so 10T + L is a multiple of 11 if T - L is, and we're done.

For divisibility by 9, you add the tens and ones parts: 2106 => 210+6=216 => 21+6=27 => 9.