中日都增兵后,双方在上海滩的鏖战更趋激烈。8月23日起,敌第3、第11师团在舰炮密集火力掩护下,向吴淞口铁路码头、狮子林、川沙口登陆,进攻宝山、月浦、罗店、蕴藻浜我军阵地。张治中派王敬久为淞沪前敌指挥官,指挥第9集团军所辖部队抗击登陆日军。与此同时,刚组建的第15集团军在罗卓英指挥下,向宝山、川沙口登陆之敌发起反击,第98师于8月24日击退攻占狮子林的日军,歼敌数千人。第11师冒着飞机猛烈轰炸,经艰苦战斗,收复罗店。日军不甘失败,调集坦克、飞机和重炮大举反扑,围绕罗店双方展开拉锯战。第11师会同原先防守在这里的第67师并肩战斗,以"一寸山河一寸血"的感天动地精神同日寇拼杀,战况之惨烈,为开战以来所仅有。守军阵地几经易手,往往得而复失,失而复得,阵地前尸积如山,血流成渠。第67师师长李树森身负重伤,第201旅旅长蔡炳炎及两个团长阵亡,两个师的营连长大半牺牲。血战至29日,罗店再告陷入敌手,刚刚从德国回国奔赴前线的黄维率第67师奋力突入,旋被击退。
日军为连接和扩大两个师团的登陆场,于9月2日至5日,连续以军舰、飞机、坦克支援,向防守月浦、宝山的中国第98师夏楚中部发动猛烈进攻,因伤亡过重,第98师撤出阵地。奉命坚守宝山的第583团3营500余人在营长姚子青率领下,与日军展开激战。日军炮火猛烈轰击,步兵轮番冲锋,然全营官兵抱与阵地共存亡之必死决心,一次又一次打退敌军疯狂进攻。日军恼羞成怒施放硫磺弹,城中燃起冲天大火,所有建筑化为瓦砾堆。战至7日晨,日军以坦克为前导始得突入城内,姚子青率全营官兵与敌巷战,打尽最后一颗子弹,至当日上午10时,除一人前夜受命突围向上级报告军情外,其余全部壮烈牺牲。
宝山保卫战进行的同时,罗卓英的第15集团军为克复罗店,与日军再度激烈交战。但日军在占领宝山后,以一部沿宝罗公路向西攻击,吴淞方面日军也越过泗塘河西攻,日军尚不断在各地登陆,中国军队顿时面临腹背受敌的威胁。至9月中旬,敌军后增援兵陆续开到,中国方面因无力占据海、空控制权,在进攻敌据点、抗击敌登陆和逐地争夺战中损失惨重,部队疲惫至极,被迫转入防御。这之前,9月6日,第三战区发布的第二期作战计划:"战区以持久抗战之目的,限制登陆之敌发展,力求各个击破之效。各个击破不能达成时,则依次后退于敌舰射程外之既得陆地,施行顽强抵抗,待后方部队到达,再行决战而取最后胜利。"已做好攻坚不利转而实施防御作战的准备。
9月9日,日军沿军工路、淞沪公路和月浦、罗店之线向中国军队发动强大攻势,我军同敌展开殊死搏杀,9月11日,第15集团军右翼阵地被突破,部队减员严重,遂渐次退至罗店以南施相公庙、浏河之线预筑阵地,第9集团军亦转移到北站、江湾、庙行、蕴藻浜右岸之线预筑阵地,与日军形成对峙。
日军逐渐掌握战场的主动权,日本最高层决定将侵华的主要作战方向由华北转移到上海,并要求加快上海战役进程,"大致以10月上旬为期,在华北与上海两方面发动攻击,务必给予重大打击,造成使敌人屈服之形势。"