Given $f$ is continuous and $f(x)=f(e^{t}x)$ for all $x\in\mathbb{R}$ and $t\ge0$, show that $f$ is constant function
An alternative proof: put $x=e^{-t}$ to get $f(e^{-t})=f(1)$ for all $t \geq 0$. This im plies $f(x)=f(1)$ for all $x \in (0,1]$. Next note that $f(x)=f(2x)$ for all $x$: just take $t=\ln (2)$). You now see easily that $f(x)=f(1)$ for all $x >0$. Since $f(-x)$ satisfies the same hypothesis it follows that $f$ is a constant on $(-\infty, 0)$ also. By continuity the constant values for $x <0$ and $x >0$ must be the same.
Your argument is correct. Also, following from what you did, I came up with the following constructive argument. Do check if it is right -
First, consider $y>x>0$, and let $t = \ln(\frac{y}{x})$ i.e. $e^t = \frac{y}{x}$.
Then, $f(x) = f(e^tx) = f(y)$.
As this holds for all $y>x>0$, we must have $f(x) = C_+$ for $x>0$
Similarly, for $y<x<0$, let $t = \ln(\frac{|y|}{|x|})$.
Then again, $f(x) = f(e^tx) = f(\frac{|y|}{|x|}x) = f(y)$.
As this holds for all $y<x<0$, we must have $f(x) = C_-$ for $x<0$
Thus, all we need to do now is to check at $x=0$. At this point, we will use continuity.
As $f(x)$ is continuous everywhere in $\mathbb{R}$, it is continuous at $x=0$. So, we have $\lim_{x\to 0^+} f(x) = \lim_{x\to 0^-} f(x) = f(0)$.
Hence, we get $C_+ = C_- = f(0)$ i.e. $f(x)$ is a constant function.