diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/DataSetForm.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/DataSetForm.js
index 22b44dc2c9f80ea4ba6c35dbdcb350419277fbbe..3b2c20bdc93a834d3b2740e44853c5e91652a107 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/DataSetForm.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/DataSetForm.js
@@ -73,10 +73,12 @@ function DataSetForm(serverFacade, containerId, profile, sample, mode) {
 		$dataSetTypeFieldSet.append($('<legend>').text('Type Info'));
 		
 		var $dataSetTypeDropDownObj = this._getDropDownForField('DATASET_TYPE', this.dataSetTypes);
+		
 		$dataSetTypeDropDownObj.change(function() { 
 			localInstance._repaintMetadata(
 					localInstance._getDataSetType($('#DATASET_TYPE').val())
 			);
+			localInstance.isFormDirty = true;
 		});
 		
 		var $dataSetTypeDropDown = $('<div>', { class : 'control-group'});
diff --git a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm.js b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm.js
index 25bbcecc45d0f57451b69d9c2d2259e83db2e533..06babf65fc40bf46868ac5ddd1e0272421f45526 100644
--- a/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm.js
+++ b/plasmid/source/core-plugins/newbrowser/1/as/webapps/newbrowser/html/js/views/SampleForm.js
@@ -537,6 +537,25 @@ function SampleForm(serverFacade, inspector, containerId, profile, sampleTypeCod
 		if (this.mode === SampleFormMode.VIEW) {
 			this.enableEditButtonEvent();
 		}
+		
+		//Events to take care of a dirty form
+		$("#sampleSpaceProject").change(function(event) {
+			localInstance.isFormDirty = true;
+		});
+		$("#sampleCode").change(function(event) {
+			localInstance.isFormDirty = true;
+		});
+		
+		for(var i = 0; i < sampleType.propertyTypeGroups.length; i++) {
+			var propertyTypeGroup = sampleType.propertyTypeGroups[i];
+			for(var j = 0; j < propertyTypeGroup.propertyTypes.length; j++) {
+				var propertyType = propertyTypeGroup.propertyTypes[j];
+				var $field = $("#"+propertyType.code.replace('$','\\$').replace(/\./g,'\\.'));
+				$field.change(function(event) {
+					localInstance.isFormDirty = true;
+				});
+			}
+		}
 	}
 	
 	this.showSamplesWithoutPage = function(event) {
@@ -681,6 +700,7 @@ function SampleForm(serverFacade, inspector, containerId, profile, sampleTypeCod
 			}
 			
 			Util.showSuccess(sampleTypeDisplayName + " " + message, callbackOk);
+			this.isFormDirty = false;
 		} else { //This should never happen
 			Util.showError("Unknown Error.", function() {Util.unblockUI();});
 		}