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'
});