You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@click.apache.org by sa...@apache.org on 2010/11/19 12:08:56 UTC

svn commit: r1036804 - in /click/trunk/click/examples: src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java webapp/form/dynamic/populate-on-select.js

Author: sabob
Date: Fri Nov 19 11:08:55 2010
New Revision: 1036804

URL: http://svn.apache.org/viewvc?rev=1036804&view=rev
Log:
convert bypass validation examples

Modified:
    click/trunk/click/examples/src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java
    click/trunk/click/examples/webapp/form/dynamic/populate-on-select.js

Modified: click/trunk/click/examples/src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java?rev=1036804&r1=1036803&r2=1036804&view=diff
==============================================================================
--- click/trunk/click/examples/src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java (original)
+++ click/trunk/click/examples/src/org/apache/click/examples/page/form/dynamic/PopulateOnSelect.java Fri Nov 19 11:08:55 2010
@@ -37,7 +37,7 @@ import org.apache.click.util.ClickUtils;
 import org.apache.commons.lang.StringUtils;
 
 /**
- * Demonstrate how to populate Select controls.
+ * Demonstrate how to dynamically populate Select controls.
  */
 public class PopulateOnSelect extends BorderPage {
 
@@ -79,18 +79,18 @@ public class PopulateOnSelect extends Bo
         fieldSet.add(city);
         fieldSet.add(suburb);
 
+        form.add(save);
+
         // build the Selects in the onInit phase
         buildSelects();
-
-        form.add(save);
     }
 
     // Public Methods ---------------------------------------------------------
 
     public void buildSelects() {
-        state.setDefaultOption(new Option("---"));
-        city.setDefaultOption(new Option("---"));
-        suburb.setDefaultOption(new Option("---"));
+        state.setDefaultOption(Option.EMPTY_OPTION);
+        city.setDefaultOption(Option.EMPTY_OPTION);
+        suburb.setDefaultOption(Option.EMPTY_OPTION);
 
         // Populate the States. Do this before binding requests
         populateStateData();
@@ -113,6 +113,11 @@ public class PopulateOnSelect extends Bo
 
         // If city is selected, proceed to populate suburbs
         populateSuburbData(city.getValue());
+
+        // If save was not clicked, don't validate
+        if(form.isFormSubmission() && !save.isClicked()) {
+            form.setValidate(false);
+        }
     }
 
     @Override
@@ -120,14 +125,14 @@ public class PopulateOnSelect extends Bo
         if (headElements == null) {
             headElements = super.getHeadElements();
 
-            Map<String, Object> model = new HashMap<String, Object>();
-            model.put("stateId", state.getId());
-            model.put("cityId", city.getId());
-            model.put("suburbId", suburb.getId());
+            Map<String, Object> templateModel = new HashMap<String, Object>();
+            templateModel.put("stateId", state.getId());
+            templateModel.put("cityId", city.getId());
+            templateModel.put("suburbId", suburb.getId());
 
             // populate-on-select.js is a Velocity template which is rendered directly
             // from this Page
-            JsScript script = new JsScript("/form/dynamic/populate-on-select.js", model);
+            JsScript script = new JsScript("/form/dynamic/populate-on-select.js", templateModel);
             headElements.add(script);
         }
         return headElements;

Modified: click/trunk/click/examples/webapp/form/dynamic/populate-on-select.js
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/form/dynamic/populate-on-select.js?rev=1036804&r1=1036803&r2=1036804&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/form/dynamic/populate-on-select.js (original)
+++ click/trunk/click/examples/webapp/form/dynamic/populate-on-select.js Fri Nov 19 11:08:55 2010
@@ -28,7 +28,7 @@ function printValues() {
     var state = document.getElementById('${stateId}');
     var city = document.getElementById('${cityId}');
     var suburb = document.getElementById('${suburbId}');
-    
+
     var html = 'Selected state: key -> ' + state.value + ', value -> ' + state.options[state.selectedIndex].text;
     html+="<br>" + 'Selected city: key -> ' + city.value  + ', value -> ' + city.options[city.selectedIndex].text;
     html+="<br>" + 'Selected suburb: key -> ' + suburb.value  + ', value -> ' + suburb.options[suburb.selectedIndex].text;
@@ -47,6 +47,6 @@ function handleChange(id, form) {
         // Clear dependent Select value
         select.selectedIndex=0;
     }
-    // Submit form and bypass server-side validation
-    Click.submit(form, false);
+    // Submit form
+    form.submit();
 }
\ No newline at end of file