Directive input element name

Setting the name on an input element so that can show validation errors.

HTML

<script src="http://code.angularjs.org/angular-1.0.0rc4.min.js"></script>
<p>Testing Setting of the name on an element</p>
<hr/>
<div ng-app="interfaceSettings" ng-controller="TestDirective">
    <ul>
        <li><b>AngularVersion:</b> {{settings.angularVersion.full}}</li>
        <li><b>ServerType:</b> {{settings.serverType}}</li>
        <li><b>ServerName:</b> {{settings.serverName}}</li>
    </ul>
    <hr/>
    
    <div id="validationError" style="display:none;" class="alert_box error" ng:show="settingsForm.$invalid">
        <b style="color:red;">There Were Errors:</b><br/>
    <ul>
        <li ng-show="settingsForm.serverName.$error.required"><b>Required: </b> ServerName</li>
        <li ng-show="settingsForm.serverType.$error.required"><b>Required: </b> ServerType</li>
    </ul>
</div>
    
    
    <hr/>
    <form name="settingsForm">
        <label>ServerName</label> <input type="text" ng-model="settings.serverName" name="serverName" required/><br/><br/>
        <ei-text-field model="settings.serverType" label="ServerType" input-name="serverType" required="true"/>
    </form>
    
</div>

CSS

body {
    padding: 10px; 
    font-family: sans-serif; 
    font-size: 0.9em;
}
form label {font-weight:bold;margin-right:10px;font-size:0.9em;}
form label:after {content:':';}
input.ng-invalid, select.ng-invalid, textarea.ng-invalid, input.formElement.ng-invalid {
    border: solid 1pt red;
}

JavaScript

var settingsModule = angular.module('interfaceSettings', []);
settingsModule.directive('eiTextField', function() {
    return {
        restrict: 'E',
        compile: function(element, attrs) {
            element.replaceWith('<div><label>' + attrs.label + '</label><input type="text" name="' + attrs.inputName +  '" ng-model="' + attrs.model + '" class="formElement" ng-required="' + attrs.required + '"/> (inputName: ' + attrs.inputName + ')</div>');
        }
    };
});

function TestDirective($scope) {
    $scope.settings = {
        angularVersion: angular.version,
        serverName: 'vaiism',
        serverType: 'Sun Ultra 40',
        serverUser: 'rweeks'
    };
}