MIT has developed a solution to this, but it's not ready for production. They developed a "battery" that uses 2 tanks and an ion exchange membrane. Electrolyte is put into 1 tank, and is pumped to the other through the membrane. As it passes through the membrane, it delivers its charge. When all the electrolyte is pumped through, the charge is gone. At this point you would drive to a "gas" station, hook up a couple of hoses, and one hose would drain the used electrolyte from one tank while the other tank is filled with fresh. A fully charged battery would be a 10 minute stop. And, the electrolyte would likely be something that can be recharged and reused.
I first read about this a couple of years ago, and at that point it was a working system but the capacity was only good for a couple of miles. If they can develop this to a point where a 10 minute refill gets you 300 miles of range, the main problem with electric cars is solved and they can go mainstream. Of course, we'd still need to make sure the electrolyte is environmentally friendly, and we'd need a way to generate about 100 times more electricity than we do now because that electrolyte isn't going to charge itself.