Qualtrics.SurveyEngine.addOnload(function() { /*Place your JavaScript here to run when the page loads*/ console.log("onload"); }); Qualtrics.SurveyEngine.addOnReady(function() { /* Identify the address fields by number below */ addressLineField = "QR~"+this.questionId+"~3"; localityField = "QR~"+this.questionId+"~5"; stateField = "QR~"+this.questionId+"~6"; postcodeField = "QR~"+this.questionId+"~7"; var TempKey = "YOUR_REQUEST_KEY_GOES_HERE"; /* No changes below this line */ console.log("onready - this.questionId=", this.questionId); addressLineFieldText = addressLineField+"~TEXT"; console.log("addressLineFieldText=", addressLineFieldText); localityFieldText = localityField+"~TEXT"; console.log("localityFieldText=", localityFieldText); stateFieldText = stateField+"~TEXT"; console.log("stateFieldText=", stateFieldText); postcodeFieldText =postcodeField+"~TEXT"; console.log("postcodeFieldText=", postcodeFieldText); jQuery(function($){ $.getScript('https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.1/jquery.js',function($){ var $x = jQuery.noConflict(); $x.getScript('https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js',function ($){ $x("head").append(""); var css = $x("head").children(":last"); css.attr({ rel: "stylesheet",type: "text/css", href: "https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/themes/base/jquery-ui.css"}); $x('[name="'+postcodeFieldText+'"]').after('
'); var Selectedval = ""; $x('[name="'+addressLineFieldText+'"]').autocomplete( { source: function( request, response ) { Selectedval = ""; $x.ajax( { url: "https://kleber.datatoolscloud.net.au/KleberWebService/DtKleberService.svc/ProcessQueryStringRequest", dataType: "jsonp", type: "GET", contentType: "application/json; charset=utf-8", data: {OutputFormat:"json", ResultLimit:10, AddressLine:request.term, Method:"DataTools.Capture.Address.Predictive.AuPaf.SearchAddress", RequestKey:TempKey}, success: function( data ) { response( $x.map( data.DtResponse.Result, function( item ) { var Output = (item.AddressLine + ", " + item.Locality + ", " + item.State + ", " + item.Postcode); return {label: Output,value: Output,Output: Output, RecordId: item.RecordId,AddressLine: item.AddressLine}; })); } }); }, select: function( event, ui ) { $x.ajax( { url: "https://kleber.datatoolscloud.net.au/KleberWebService/DtKleberService.svc/ProcessQueryStringRequest", dataType: "jsonp", crossDomain: true, data: {OutputFormat:"json", RecordId:ui.item.RecordId, Method:"DataTools.Capture.Address.Predictive.AuPaf.RetrieveAddress", RequestKey:TempKey}, success: function (data) { $x.map(data.DtResponse.Result, function (item) { $x('[name="'+addressLineFieldText+'"]').val(ui.item.AddressLine); $x('[name="'+localityFieldText+'"]').val(item.Locality); $x('[name="'+stateFieldText+'"]').val(item.State); $x('[name="'+postcodeFieldText+'"]').val(item.Postcode); $x('[name="QRQID1Add"]').css('color','#7CFC00'); $x('[name="QRQID1Add"]').text(function(index) { return "Valid";}); console.log(item.DPID); Selectedval = item.DPID; }); } }); }, close: function(event, ui) { if(Selectedval == "") { $x('[name="QRQID1Add"]').css('color','#FF0000'); $x('[name="QRQID1Add"]').text(function(index) { return "Invalid";}); $x('[name="'+localityFieldText+'"]').val(""); $x('[name="'+stateFieldText+'"]').val(""); $x('[name="'+postcodeFieldText+'"]').val(""); } } }); }); }); }); }); Qualtrics.SurveyEngine.addOnUnload(function() { /*Place your JavaScript here to run when the page is unloaded*/ });