JSFiddle - React, Tailwind, and code Playground

by Cody Lindley

HTML

<script src="https://dl.dropboxusercontent.com/u/2026291/backbone/jquery-2.0.2.js"></script>
<script src="https://dl.dropboxusercontent.com/u/2026291/backbone/lodash.underscore.js"></script>
<script src="https://dl.dropboxusercontent.com/u/2026291/backbone/backbone.js"></script>
<script src="https://getfirebug.com/firebug-lite-debug.js"></script>

JavaScript

var ContactModel = Backbone.Model.extend({ //extend Backbone.Model
    validate :function(attributes,options){
        var phone = /\(?\d{3}\W?\s?\d{3}\W?\d{4}/.test(attributes.phone);
        var firstName = /^[A-Z]'?[a-zA-Z]+(-[a-zA-Z]+)?$/.test(attributes.firstName);
        var lastName = /^[A-Z]'?[a-zA-Z]+(-[a-zA-Z]+)?$/.test(attributes.lastName);
        if(!phone || !firstName || !lastName){
            return 'Setting, Saving, Or Seeding Invalid Data'
        }
    },
    initialize:function(){
        //run validation, if invalid log message
        if(!this.isValid()){console.log(this.validationError)}
    }
});
var contact1Model = new ContactModel({ //validate seeded data
    firstName:'jo234 hn',lastName:'ao321-- e',phone:'111-1111-111111'
});