What prompted Leah to offer her maidservant to Yaakov?
Tosfos ha'Shalem (3, citing R. Efrayim), Ramban: The Imahos were Nevi'os, 1 and knew that they would bear Yaakov twelve tribes. Consequently, Leah wanted that the majority of the tribes should come from her or from her maidservant.
Ha'amek Davar: She realized that she is sinning against Zilpah [through not giving her to Yaakov], who is envious of Bilhah.
Why did Yaakov accept Leah's offer?
Ramban #1: Knowing that Leah's prediction was correct, Yaakov conceded to her request.
Ramban #2: Because, since the fourth generation was destined to return to Eretz Cana'an, and Avraham and Yitzchak did not have many (eligible) children, Yaakov opted to marry many wives, in order to fill the land upon their return.
Asarah Ma'amaros (Chikur Din 3:18): Leah put Zilpah in place of herself. Yaakov did not know. 1
Surely, he realized before Asher was conceived! Perhaps once he saw that one of his sons was from Zilpah, he realized that she is one of the four wives he must have (PF).