JSFiddle - React, Tailwind, and code Playground

HTML

<p>Fill out the postcode and hit search</p>
<form>
    <input name="address1" placeholder="address 1" /><br />
    <input name="custom_field"  placeholder="address 2" /><br />
    <input name="address3"  placeholder="address 3" /><br />
    <input name="address4"  placeholder="address 4" /><br />
    <input class="postcode" name="postcode"  placeholder="Postcode" /><br />
</form>

CSS

/*fill out the postcode and hit search*/

JavaScript

/*fill out the postcode and hit search*/
(function($) {
	$.fn.searchPc = function(options) {

		var settings = $.extend({
			address1: 'address1',
	        address2: 'address2',
	        address3: 'address3',
	        address4: 'address4'
		}, options);

		return this.each(function() {

			var $el = $(this);
			var $form = $el.closest('form');

			//insert the button on the form
			$('<a class="postCodeLookup">Search</a>').insertAfter($el);
			$('.postCodeLookup', $form).button({icons:{primary:'ui-icon-search'}});

			$form.on('click', '.postCodeLookup', function() {

				$.post('http://maps.googleapis.com/maps/api/geocode/json?address='+$el.val()+'&sensor=false', function(r) {
					var lat = r['results'][0]['geometry']['location']['lat'];
					var lng = r['results'][0]['geometry']['location']['lng'];
					$.post('http://maps.googleapis.com/maps/api/geocode/json?latlng='+lat+','+lng+'&sensor=false', function(address) {
						$('input[name='+settings.address1+']').val(address['results'][0]['address_components'][0]['long_name']);
                        $('input[name='+settings.address2+']').val(address['results'][0]['address_components'][1]['long_name']);
                        $('input[name='+settings.address3+']').val(address['results'][0]['address_components'][2]['long_name']);
                        $('input[name='+settings.address4+']').val(address['results'][0]['address_components'][3]['long_name']);
					});
				});

			});

			

		});
	};
})(jQuery);


		$('input[name=postcode]').searchPc({
            address2: 'custom_field',
		});