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/07/10 19:17:58 UTC
svn commit: r962888 - in /click/trunk/click/examples:
src/org/apache/click/examples/page/ajax/accordion/
src/org/apache/click/examples/page/ajax/content/ webapp/WEB-INF/
webapp/ajax/ webapp/ajax/accordion/ webapp/ajax/compare/
webapp/ajax/content/ weba...
Author: sabob
Date: Sat Jul 10 17:17:57 2010
New Revision: 962888
URL: http://svn.apache.org/viewvc?rev=962888&view=rev
Log:
added xml and json demos
Added:
click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AccordionPage.java
- copied, changed from r962426, click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AjaxAccordion.java
click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/
click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/JsonResponsePage.java
click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/XmlResponsePage.java
click/trunk/click/examples/webapp/ajax/accordion/accordion.htm
- copied unchanged from r962419, click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.htm
click/trunk/click/examples/webapp/ajax/accordion/accordion.js
- copied, changed from r962419, click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.js
click/trunk/click/examples/webapp/ajax/content/
click/trunk/click/examples/webapp/ajax/content/json-response.htm
click/trunk/click/examples/webapp/ajax/content/xml-response.htm
Removed:
click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AjaxAccordion.java
click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.htm
click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.js
Modified:
click/trunk/click/examples/webapp/WEB-INF/menu.xml
click/trunk/click/examples/webapp/ajax/ajax-behavior.htm
click/trunk/click/examples/webapp/ajax/compare/jquery-ajax-demo.htm
click/trunk/click/examples/webapp/ajax/compare/prototype-ajax-demo.htm
click/trunk/click/examples/webapp/ajax/form/advanced-form-ajax.js
click/trunk/click/examples/webapp/ajax/form/simple-form-ajax.js
click/trunk/click/examples/webapp/ajax/page-action.htm
click/trunk/click/examples/webapp/ajax/table/table-ajax-demo.js
Copied: click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AccordionPage.java (from r962426, click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AjaxAccordion.java)
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AccordionPage.java?p2=click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AccordionPage.java&p1=click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AjaxAccordion.java&r1=962426&r2=962888&rev=962888&view=diff
==============================================================================
--- click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AjaxAccordion.java (original)
+++ click/trunk/click/examples/src/org/apache/click/examples/page/ajax/accordion/AccordionPage.java Sat Jul 10 17:17:57 2010
@@ -27,10 +27,10 @@ import org.apache.click.element.JsScript
import org.apache.click.examples.page.BorderPage;
/**
- * Provides an Ajax demo of <a target="_blank" class="external" href="http://flowplayer.org/tools/demos/tabs/accordion.html">jQuery Tools</a>
+ * Provides a demo of the <a target="_blank" class="external" href="http://flowplayer.org/tools/demos/tabs/accordion.html">jQuery Tools</a>
* Accordion.
*/
-public class AjaxAccordion extends BorderPage {
+public class AccordionPage extends BorderPage {
private static final long serialVersionUID = 1L;
@@ -46,8 +46,8 @@ public class AjaxAccordion extends Borde
headElements.add(new CssImport("/assets/css/tabs-accordion.css"));
// Note the actual JavaScript necessary to setup the accordion is
- // specified in the Page JavaScript template -> ajax-accordion.js.
- headElements.add(new JsScript("/ajax/accordion/ajax-accordion.js", new HashMap()));
+ // specified in the Page JavaScript template -> accordion.js.
+ headElements.add(new JsScript("/ajax/accordion/accordion.js", new HashMap()));
// Alternatively, the JsScript below could be used to add
// the necessary JavaScript to setup the accordion, for example:
Added: click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/JsonResponsePage.java
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/JsonResponsePage.java?rev=962888&view=auto
==============================================================================
--- click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/JsonResponsePage.java (added)
+++ click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/JsonResponsePage.java Sat Jul 10 17:17:57 2010
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.click.examples.page.ajax.content;
+
+import org.apache.click.Control;
+import org.apache.click.Partial;
+import org.apache.click.ajax.AjaxBehavior;
+import org.apache.click.control.ActionLink;
+import org.apache.click.examples.page.BorderPage;
+
+/**
+ * Demonstrates how a Partial can return a JSON response.
+ */
+public class JsonResponsePage extends BorderPage {
+
+ private static final long serialVersionUID = 1L;
+
+ private ActionLink link = new ActionLink("link", "here");
+
+ public JsonResponsePage() {
+ link.setId("link-id");
+
+ addControl(link);
+
+ // Add an Ajax behavior to the link. The behavior will be invoked when the
+ // link is clicked. See the basic-ajax-demo.htm template for the client-side
+ // Ajax code
+ link.addBehavior(new AjaxBehavior() {
+
+ @Override
+ public Partial onAction(Control source) {
+ // Formatted date instance that will be added to the
+ String now = format.currentDate("MMM, yyyy dd HH:MM:ss");
+
+ String msg = "{\"msg\": \"JSON returned at: \", \"date\": \"" + now + "\"}";
+ // Return a partial containing the message
+ return new Partial(msg, Partial.JSON);
+ }
+ });
+ }
+}
Added: click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/XmlResponsePage.java
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/XmlResponsePage.java?rev=962888&view=auto
==============================================================================
--- click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/XmlResponsePage.java (added)
+++ click/trunk/click/examples/src/org/apache/click/examples/page/ajax/content/XmlResponsePage.java Sat Jul 10 17:17:57 2010
@@ -0,0 +1,60 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.click.examples.page.ajax.content;
+
+import org.apache.click.Control;
+import org.apache.click.Partial;
+import org.apache.click.ajax.AjaxBehavior;
+import org.apache.click.control.ActionLink;
+import org.apache.click.examples.page.BorderPage;
+
+/**
+ * Demonstrates how a Partial can return an XML response.
+ */
+public class XmlResponsePage extends BorderPage {
+
+ private static final long serialVersionUID = 1L;
+
+ private ActionLink link = new ActionLink("link", "here");
+
+ public XmlResponsePage() {
+ link.setId("link-id");
+
+ addControl(link);
+
+ // Add an Ajax behavior to the link. The behavior will be invoked when the
+ // link is clicked. See the basic-ajax-demo.htm template for the client-side
+ // Ajax code
+ link.addBehavior(new AjaxBehavior() {
+
+ @Override
+ public Partial onAction(Control source) {
+ // Formatted date instance that will be added to the
+ String now = format.currentDate("MMM, yyyy dd HH:MM:ss");
+
+ String msg = "<payload>"
+ + "<msg>XML returned at: </msg>"
+ + "<date>" + now + "</date>"
+ + "</payload>";
+ // Return a partial containing the message
+ return new Partial(msg, Partial.XML);
+ }
+ });
+ }
+}
Modified: click/trunk/click/examples/webapp/WEB-INF/menu.xml
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/WEB-INF/menu.xml?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/WEB-INF/menu.xml (original)
+++ click/trunk/click/examples/webapp/WEB-INF/menu.xml Sat Jul 10 17:17:57 2010
@@ -151,10 +151,13 @@
<menu label="Simple Form AJAX Demo" path="ajax/form/simple-form-ajax.htm"/>
<menu label="Advanced Form AJAX Demo" path="ajax/form/advanced-form-ajax.htm"/>
<menu separator="true"/>
- <menu label="AJAX Accordion" path="ajax/accordion/ajax-accordion.htm"/>
- <menu label="AJAX Auto Complete Field" path="ajax/auto-complete.htm"/>
- <menu label="AJAX Live Scroller " path="ajax/scroller/ajax-live-scroller.htm"/>
- <menu label="AJAX Select" path="ajax/select/ajax-select.htm"/>
+ <menu label="XML response" path="ajax/content/xml-response.htm"/>
+ <menu label="JSON response" path="ajax/content/json-response.htm"/>
+ <menu separator="true"/>
+ <menu label="Accordion" path="ajax/accordion/accordion.htm"/>
+ <menu label="Auto Complete Field" path="ajax/auto-complete.htm"/>
+ <menu label="Live Scroller " path="ajax/scroller/ajax-live-scroller.htm"/>
+ <menu label="Select" path="ajax/select/ajax-select.htm"/>
</menu>
<menu label=" Integration" path="#" imageSrc="/assets/images/cayenne.png">
Copied: click/trunk/click/examples/webapp/ajax/accordion/accordion.js (from r962419, click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.js)
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/accordion/accordion.js?p2=click/trunk/click/examples/webapp/ajax/accordion/accordion.js&p1=click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.js&r1=962419&r2=962888&rev=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/accordion/ajax-accordion.js (original)
+++ click/trunk/click/examples/webapp/ajax/accordion/accordion.js Sat Jul 10 17:17:57 2010
@@ -18,7 +18,7 @@
// *#
/**
- * The ajax-accordion Page JavaScript.
+ * The accordion Page JavaScript.
*/
// Wait until browser DOM is loaded
Modified: click/trunk/click/examples/webapp/ajax/ajax-behavior.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/ajax-behavior.htm?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/ajax-behavior.htm (original)
+++ click/trunk/click/examples/webapp/ajax/ajax-behavior.htm Sat Jul 10 17:17:57 2010
@@ -14,7 +14,7 @@
makeRequest();
// Prevent the default browser behavior of navigating to the link
- event.preventDefault();
+ return false;
})
})
@@ -37,7 +37,7 @@ to an Ajax request.
<p/>
-Click $link to fetch the date using Ajax.
+Click $link to call the server using Ajax.
<div id="result">
<!-- Ajax response will be set here -->
Modified: click/trunk/click/examples/webapp/ajax/compare/jquery-ajax-demo.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/compare/jquery-ajax-demo.htm?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/compare/jquery-ajax-demo.htm (original)
+++ click/trunk/click/examples/webapp/ajax/compare/jquery-ajax-demo.htm Sat Jul 10 17:17:57 2010
@@ -26,7 +26,7 @@ $link
makeRequest();
// Prevent the default browser behavior of navigating to the link
- event.preventDefault();
+ return false;
})
})
@@ -44,7 +44,7 @@ $link
// based the value of the predefined parameter: 'actionLink'. The 'actionLink' parameter
// value specifies the name of the ActionLink that was clicked. So we append
// the 'actionLink' parameter and set the value as the ActionLink name -> 'link'.
- var url = '$context/ajax/compare/javascript-ajax-demo.htm';
+ var url = '$context/ajax/compare/jquery-ajax-demo.htm';
var extraData = 'link-id=1&actionLink=link';
jQuery.get(url, extraData, function(data) {
updateLog(data);
Modified: click/trunk/click/examples/webapp/ajax/compare/prototype-ajax-demo.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/compare/prototype-ajax-demo.htm?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/compare/prototype-ajax-demo.htm (original)
+++ click/trunk/click/examples/webapp/ajax/compare/prototype-ajax-demo.htm Sat Jul 10 17:17:57 2010
@@ -44,7 +44,7 @@ $link
// value specifies the name of the ActionLink that was clicked. So we append
// the 'actionLink' parameter and set the value as the ActionLink name -> 'link'.
var extraData = 'link-id=1&actionLink=link';
- var url = '$context/ajax/compare/javascript-ajax-demo.htm';
+ var url = '$context/ajax/compare/prototype-ajax-demo.htm';
new Ajax.Request(url, {
method:'get',
parameters: extraData,
Added: click/trunk/click/examples/webapp/ajax/content/json-response.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/content/json-response.htm?rev=962888&view=auto
==============================================================================
--- click/trunk/click/examples/webapp/ajax/content/json-response.htm (added)
+++ click/trunk/click/examples/webapp/ajax/content/json-response.htm Sat Jul 10 17:17:57 2010
@@ -0,0 +1,39 @@
+<script type="text/javascript" src="$context/assets/js/jquery-1.4.2.js"></script>
+
+<script type="text/javascript">
+ // Register a function that is invoked as soon as the DOM is loaded
+ jQuery(document).ready(function() {
+
+ // Register a 'click' handler that makes an Ajax request
+ jQuery("#link-id").click(function(event){
+ // Make ajax request
+ makeRequest();
+
+ // Prevent the default browser behavior of navigating to the link
+ return false;
+ })
+ })
+
+ function makeRequest() {
+ var link = jQuery('#link-id');
+ var extraData = link.attr('id') + '=1';
+ var url = link.attr('href');
+ jQuery.get(url, extraData, function(data) {
+ // 'data' is the response received from the server
+
+ // Extract the 'msg' and 'date' values from the JSON response and output the result
+ var obj = jQuery.parseJSON(data);
+ jQuery("#result").html("<p class='infoMsg'>" + obj.msg + obj.date + "</p>");
+ }, {dataType:'json'});
+ }
+</script>
+
+This example shows how a Partial can return an <a href="http://www.json.org/" target="_blank">JSON</a> response.
+
+<p/>
+
+Click $link to call the server using Ajax.
+
+<div id="result">
+ <!-- Ajax response will be set here -->
+</div>
\ No newline at end of file
Added: click/trunk/click/examples/webapp/ajax/content/xml-response.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/content/xml-response.htm?rev=962888&view=auto
==============================================================================
--- click/trunk/click/examples/webapp/ajax/content/xml-response.htm (added)
+++ click/trunk/click/examples/webapp/ajax/content/xml-response.htm Sat Jul 10 17:17:57 2010
@@ -0,0 +1,41 @@
+<script type="text/javascript" src="$context/assets/js/jquery-1.4.2.js"></script>
+
+<script type="text/javascript">
+ // Register a function that is invoked as soon as the DOM is loaded
+ jQuery(document).ready(function() {
+
+ // Register a 'click' handler that makes an Ajax request
+ jQuery("#link-id").click(function(event){
+ // Make ajax request
+ makeRequest();
+
+ // Prevent the default browser behavior of navigating to the link
+ return false;
+ })
+ })
+
+ function makeRequest() {
+ var link = jQuery('#link-id');
+ var extraData = link.attr('id') + '=1';
+ var url = link.attr('href');
+ jQuery.get(url, extraData, function(data) {
+ // 'data' is the response received from the server
+
+ // Extract the <msg> and <date> values from the XML response and output the result
+ var root = jQuery(data);
+ var msg = root.find('msg').text();
+ var date = root.find('date').text();
+ jQuery("#result").html("<p class='infoMsg'>" + msg + date + "</p>");
+ }, {dataType:'xml'});
+ }
+</script>
+
+This example shows how a Partial can return an XML response.
+
+<p/>
+
+Click $link to call the server using Ajax.
+
+<div id="result">
+ <!-- Ajax response will be set here -->
+</div>
\ No newline at end of file
Modified: click/trunk/click/examples/webapp/ajax/form/advanced-form-ajax.js
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/form/advanced-form-ajax.js?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/form/advanced-form-ajax.js (original)
+++ click/trunk/click/examples/webapp/ajax/form/advanced-form-ajax.js Sat Jul 10 17:17:57 2010
@@ -31,11 +31,11 @@ jQuery(document).ready(function() {
// Register a 'click' handler on the submit button
jQuery("#form_save, #form_cancel").live('click', function(event){
- // Prevent the default browser behavior of navigating to the link
- event.preventDefault();
-
// Post form to server
postForm(event);
+
+ // Prevent the default browser behavior of navigating to the link
+ return false;
})
})
Modified: click/trunk/click/examples/webapp/ajax/form/simple-form-ajax.js
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/form/simple-form-ajax.js?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/form/simple-form-ajax.js (original)
+++ click/trunk/click/examples/webapp/ajax/form/simple-form-ajax.js Sat Jul 10 17:17:57 2010
@@ -22,11 +22,11 @@ jQuery(document).ready(function() {
// Register a 'click' handler on the submit button
jQuery("#form_save").click(function(event){
- // Prevent the default browser behavior of navigating to the link
- event.preventDefault();
-
// Post form to server
postForm(event);
+
+ // Prevent the default browser behavior of navigating to the link
+ return false;
})
})
Modified: click/trunk/click/examples/webapp/ajax/page-action.htm
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/page-action.htm?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/page-action.htm (original)
+++ click/trunk/click/examples/webapp/ajax/page-action.htm Sat Jul 10 17:17:57 2010
@@ -14,7 +14,7 @@
makeRequest();
// Prevent the default browser behavior of navigating to the link
- event.preventDefault();
+ return false;
})
})
@@ -38,7 +38,7 @@ to an Ajax request.
<p/>
-Click $link to fetch the date using Ajax.
+Click $link to call the server using Ajax.
<div id="result">
<!-- Ajax response will be set here -->
Modified: click/trunk/click/examples/webapp/ajax/table/table-ajax-demo.js
URL: http://svn.apache.org/viewvc/click/trunk/click/examples/webapp/ajax/table/table-ajax-demo.js?rev=962888&r1=962887&r2=962888&view=diff
==============================================================================
--- click/trunk/click/examples/webapp/ajax/table/table-ajax-demo.js (original)
+++ click/trunk/click/examples/webapp/ajax/table/table-ajax-demo.js Sat Jul 10 17:17:57 2010
@@ -24,9 +24,6 @@ jQuery(document).ready(function() {
// Note: the 'live' binding is a jQuery function that keeps the event bound even if the Table DOM is replaced
// http://api.jquery.com/live/
jQuery("#table td a").live('click', function(event){
- // Prevent the default browser behavior of navigating to the link
- event.preventDefault();
-
var callServer = true;
if (jQuery(event.target).text()=="Delete") {
callServer = window.confirm('Please confirm delete');
@@ -36,6 +33,9 @@ jQuery(document).ready(function() {
// Make ajax request
editCustomer(event);
}
+
+ // Prevent the default browser behavior of navigating to the link
+ event.preventDefault();
})
// Register a 'live' click handler on the sorting links of the table header (<th>),
@@ -43,10 +43,11 @@ jQuery(document).ready(function() {
// Note: the 'live' binding is a jQuery function that keeps the event bound even if the Table DOM is replaced
// http://api.jquery.com/live/
jQuery("#table th a, .pagelinks a").live('click', function(event){
- // Prevent the default browser behavior of navigating to the link
- event.preventDefault();
// Make ajax request
sortTable(event);
+
+ // Prevent the default browser behavior of navigating to the link
+ return false;
})
})