diff --git a/IPython/html/static/notebook/js/widgets/widget.js b/IPython/html/static/notebook/js/widgets/widget.js
index 17eb1f1..716b1c4 100644
--- a/IPython/html/static/notebook/js/widgets/widget.js
+++ b/IPython/html/static/notebook/js/widgets/widget.js
@@ -148,7 +148,7 @@ function(WidgetManager, _, Backbone){
}
// Delete any key value pairs that the back-end already knows about.
- var attrs = (method === 'patch') ? options.attrs : model.toJSON(options);
+ var attrs = (method === 'patch') ? model.changed : model.toJSON(options);
if (this.key_value_lock !== null) {
var key = this.key_value_lock[0];
var value = this.key_value_lock[1];