First I suuuuuck at proofs. I think I am on the right track but I need some fine tuning. Or if I am totally off let me know.
First we show that $H_i$ is nonempty.
Note that since $H_i$ is a subgroup of $G_i, H_i$ contains the identity element. So $e_G \in H_1, e_G \in H_2,..., e_G \in H_n.$ This means that $e_G \in H_1 \times H_2 \times \cdots \times H_n.$ Hence $H_i$ is non empty.
Next we show it is a subset. Let $(x_1,x_2,...,x_n) \in H_1 \times H_2 \times...\times H_n.$ This means $x_1 \in H_1, x_2 \in H_2,...x_n \in H_n.$ Since $H_i \leq G_i, x_1 \in G_1, x_2 \in G_2,...x_n \in G_n,$ which shows that $(x_1,x_2,...,x_n) \in H_1 \times H_2 \times...\times H_n$ and therefore $\in G_1 \times G_2 \times...\times G_n.$ Hence $ H_1 \times H_2 \times...\times H_n \subseteq G_1 \times G_2 \times...\times G_n.$
Let $x= (x_1,x_2,...,x_n)$ and $y= (y_1,y_2,...,y_n) \in H_1 \times H_2 \times...\times H_n.$ Then $xy^{-1}= (x_1,x_2,...,x_n)(y_1^{-1},y_2^{-1},...,y_n^{-1})= (x_1y_1^{-1},x_2y_2^{-1},...,x_ny_n^{-1}).$ Then $x_1y_1^{-1} \in H_1, x_2y_2^{-1} \in H_2,..., x_ny_n^{-1} \in H_n.$ This means that $(x_1y_1^{-1},x_2y_2^{-1},...,x_ny_n^{-1}) \in H_1 \times H_2 \times \cdots \times H_n$ since $H_i \leq G_i$ and inverses are elements in the group.
Hence $H_1 \times H_2 \times \cdots \times H_n$ is a subgroup of $G_1 \times G_2 \times \cdots \times G_n$.
How about doing it for $n=2$, and then iterating?
Also, how about using the subgroup criterion? Namely, if $h_1,h_2\in H\implies h_1h_2^{-1}\in H$, then $H\le G$.
So take $(a_1,b_1),(a_2,b_2)\in H_1×H_2$. Just check that $(a_1,b_1)(a_2,b_2)^{-1}=(a_1,b_1)(a_2^{-1},b_2^{-1})=(a_1a_2^{-1},b_1b_2^{-1})\in H_1×H_2$, which it is since $H_1,H_2$ are subgroups.
Now, looking at what you did, I think you've got it. I see you also used the subgroup criterion. I guess my solution was largely hot air, because you already did it.
Taking one more look, let me fine tune a little bit. I don't think you need to separately show $e$ is in the subset. Because, it follows from $xy^{-1}\in H$, by setting $y=x$. Of course, you did note that $H=H_1×\dots ×H_n$ is non-empty already. But that does also follow from the fact that the $H_i$ are all non-empty.
On second thought, your way of doing it was quite right: you get $e$ pretty much immediately. Even if you haven't proved it is $e$ yet.