So my friend gave me an explanation:
"You can try a concrete example, like n=2, standard basis and d_1=2, d_2=4. The so the generators for H are (2,0) and (0,4).The first generator gives you elements of the form (2n,0), the second gives you elements (0,4m) where n and m are integers. So now think of possible cosets (2n,4m)+(x,y) for integers x and y.Remember 2Z has two cosets in Z, and 4Z has 4 cosets, so you can convince yourself that H in this case has 8 cosets."
So using this and the same line of explanation..
A reduced into smith normal form is a diagonal matrix D, (d1,d2...,dn) on the diagonals (the elementary unimodular row/column operations) ensures that |detA| = |detD| which is just the product of the diagonal entries of D.
Now I look at each generator individual and find there is exactly di cosets for that generator. Then for the whole of H then this is just detA, I think this is enough?