Leeds went ahead in the ninth minute through a terrific strike from James who was then denied a brilliant second in the 29th minute as his shot from the edge of the box smashed back off the crossbar.
But Villa levelled less than 60 seconds later after a fine finish from Philippe Coutinho who then produced more magic to set up Jacob Ramsey to fire Villa in front seven minutes before the break.
The same pair then combined five minutes later as Villa bagged their third, Ramsey smashing home a clinical finish into the top right corner after the Brazilian's through ball.
But Leeds pulled a goal back in the second minute of first-half stoppage time as James scrambled home a header from close range to double his tally and the Whites equalised in the 63rd minute as Diego Llorente converted from a corner.
Villa's Ezri Konsa was then sent off following a second booking after catching Meslier with his elbow with three minutes left and after eight minutes of added time a thrilling contest ended all square.
Graham Smyth, the YEP's chief football writer, hands out the scores.

7. Mateusz Klich
7 - Loads of running, some clever play in the final third. Had a chance to win it but didn't take it. Photo by Clive Mason/Getty Images.

8. Raphinha
5 - Uncharacteristically quiet, couldn't get much going at all. Tried the risky in areas that felt unwise and almost paid the price. Photo by OLI SCARFF/AFP via Getty Images.

9. Jack Harrison
7 - Some nice football, got involved throughout, couldn't always produce at the end of his good work. Photo by OLI SCARFF/AFP via Getty Images.

10. Rodrigo
8 - Some really clever play, nice touches and passes. His movement was sharp, he pressed to force errors. A frustrated man late on but he played well. Photo by Shaun Botterill/Getty Images.

11. Dan James
9 - Tireless effort, some good football and two goals to show for it. His best showing in the forward role. Photo by Shaun Botterill/Getty Images.

12. Adam Forshaw (sub)
6 - Couldn't quite get into the game as he would have liked but tried hard to get a foot on it late on. Lost McGinn in one dangerous moment. Photo by Alex Davidson/Getty Images.

