Skip to content

Instantly share code, notes, and snippets.

@kimjoar
Created July 13, 2012 20:17
Show Gist options
  • Select an option

  • Save kimjoar/3107166 to your computer and use it in GitHub Desktop.

Select an option

Save kimjoar/3107166 to your computer and use it in GitHub Desktop.
Step 7 -> 8
var Statuses = function() {
};
Statuses.prototype.add = function(options) {
$.ajax({
url: '/status',
type: 'POST',
dataType: 'json',
data: { text: options.text },
success: options.success
});
};
var NewStatusView = function(options) {
this.statuses = options.statuses;
var add = $.proxy(this.addStatus, this);
$('#new-status form').submit(add);
};
NewStatusView.prototype.addStatus = function(e) {
e.preventDefault();
+ var that = this;
+
this.statuses.add({
text: $('#new-status textarea').val(),
success: function(data) {
- $('#statuses ul').append('<li>' + data.text + '</li>');
- $('#new-status textarea').val('');
+ that.appendStatus(data.text);
+ that.clearInput();
}
});
};
+NewStatusView.prototype.appendStatus = function(text) {
+ $('#statuses ul').append('<li>' + text + '</li>');
+};
+NewStatusView.prototype.clearInput = function() {
+ $('#new-status textarea').val('');
+};
$(document).ready(function() {
var statuses = new Statuses();
new NewStatusView({ statuses: statuses });
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment