Is a surjection from the natural numbers enough to show that a set is countable? We have all seen how Cantor showed that the rational numbers are countable with his zig-zag method, but I want to show the same thing without the zig-zag, so here is my approach, does it work?
We can list ALL the rational numbers.
$\frac{1}{1}, \frac{1}{2},  \frac{1}{3}, \frac{1}{4}, \dots   $
$\frac{2}{1}, \frac{2}{2},  \frac{2}{3}, \frac{2}{4}, \dots   $
$\frac{3}{1}, \frac{3}{2},  \frac{3}{3}, \frac{3}{4}, \dots   $
$\frac{4}{1}, \frac{4}{2},  \frac{4}{3}, \frac{4}{4}, \dots   $
$\dots$
Then we will pair the first row with some unique natural numbers. We will take the first prime number two and append fours to it.
$24, 244, 2444, 2444, \dots$
Then the next row will use the next prime number three.
$34, 344, 3444, 3444, \dots$
Then the next row will use the the next prime number five.
$54, 544, 5444, 5444, \dots$
Then the next row will use the the next prime number seven.
$74, 744, 7444, 7444, \dots$
And so on.
Every rational number will be assigned at least one unique natural number, so we know that the cardinality of the rational numbers can't be greater than the cardinality of the natural numbers.

There are two common definitions of countability. One is more properly called "countably infinite" where $X$ is countably infinite if it can be put in bijection with $\mathbb{N}$. The other, weaker definition of countability is exactly what you said, i.e. that we can map $\mathbb{N}$ onto $X$. So the latter would encompass the former, i.e. a countably infinite set trivially can have $\mathbb{N}$ onto it. But it also holds for finite sets. A set is countably infinite if and only if it's countable and not finite. In a fairly intuitive way, if $f : \mathbb{N} \to X$ is a surjection, and $X$ is infinite, then we can construct a bijection $g : \mathbb{N} \to X$ "induced by" $f$.
