Der Ort wurde 1697 unter dem Namen Maidenhead gegründet und zählte damals noch zum Burlington County. Ab 1714 gehörte er zum Hunterdon County. 1777 war Maidenhead eine Station für britische Truppen in der Zweiten Schlacht von Trenton. 1816 benannte man den Ort um zu dem heutigen Namen. Namensgeber ist James Lawrence, der 1812 im Britisch-Amerikanischen Krieg zu Ehren gekommen war. Seit der Gründung des Mercer County 1838 gehört der Ort zu diesem County.