Here is another solution that uses Checkboxes to display function choices as suggested by David R and David P, and ensures the viewing window and axes remain unchanged (specifying an explicit PlotRange is still a good idea). Note that a PlotStyle for each function can easily be specified with this technique.
Manipulate[
Plot[{5 Sin[x], Cos[x], BesselJ[3, x]},{x, 0, 10},
PlotStyle -> {
If[MemberQ[choices, 1], {Red, Dashed}, None],
If[MemberQ[choices, 2], Automatic, None],
If[MemberQ[choices, 3], Purple, None]}],
{{choices, {1, 2, 3}}, {1, 2, 3}, CheckboxBar}]