Chris,
Do you not have a form element (an input or select) in your code for each of these attributes that has an id of the attribute name?
It does not matter what order the loop hits which attribute as
document.getElementById(attr).value = featureAttributes[attr];
will but the correct value in the correct element based on the attributes name.
<div class="form-group">
<label for="signId">Sign ID</label>
<input type="number" class="form-control" placeholder="Sign ID" name="signId" id="signId" />
</div>
Based on this code from your projects index.html you have a input element with an id of "signId" so when the loop gets to a attribute with the name "signId" it will put the value of that attribute (from the Query) into that form element.