CRM-14353 - More accurately target visible form elements
authorColeman Watts <coleman@civicrm.org>
Tue, 10 Jun 2014 18:56:57 +0000 (19:56 +0100)
committerColeman Watts <coleman@civicrm.org>
Tue, 10 Jun 2014 18:56:57 +0000 (19:56 +0100)
js/Common.js

index a8dfeb08073d8aebf38a9da710c240319273c4b9..abc5cae3919372b766bb09156a5cef8341ce8d66 100644 (file)
@@ -245,7 +245,7 @@ CRM.validate = CRM.validate || {
  */
   CRM.utils.initialValueChanged = function(el) {
     var isDirty = false;
-    $(':input:visible, :input.select2-offscreen', el).not('[type=submit], [type=button], .crm-action-menu').each(function () {
+    $(':input:visible, .select2-container:visible+:input.select2-offscreen', el).not('[type=submit], [type=button], .crm-action-menu').each(function () {
       var initialValue = $(this).data('crm-initial-value');
       // skip change of value for submit buttons
       if (initialValue !== undefined && !_.isEqual(initialValue, $(this).val())) {
@@ -517,7 +517,7 @@ CRM.validate = CRM.validate || {
 
   // CRM-14353 - Warn of unsaved changes for forms which have opted in
   window.onbeforeunload = function() {
-    if (CRM.utils.initialValueChanged($('form[data-warn-changes=true]'))) {
+    if (CRM.utils.initialValueChanged($('form[data-warn-changes=true]:visible'))) {
       return ts('You have unsaved changes.');
      }
   };