You are previewing Pro jQuery in Oracle Application Express.
O'Reilly logo
Pro jQuery in Oracle Application Express

Book Description

Building on your existing SQL skills, this book teaches you how to apply useful jQuery techniques to applications developed using the Oracle Application Express (APEX) development tool.

Pro jQuery in Oracle Application Express covers the fundamentals you need to start enhancing your applications, with some practical examples that you'll want in your own applications tomorrow. jQuery is a framework already utilized by APEX, and by learning the basics of jQuery you can leverage the flexible dynamic actions provided and see your applications raise the bar. Discover why you should embrace HTML5, CSS, and jQuery library capabilities, and how they can enhance the user experience.

Oracle Application Express is a mature, browser-based, rapid-development environment with a strong community base around the #orclapex tag. jQuery is a language for the browser, with it you can treat your web page as if it were a database, interacting with a range of features and functions that can make you into a more constructive, more efficient developer.

  • Exemplifies how productive APEX, CSS, and jQuery can be
  • Transforms your PL/SQL skills to CSS and jQuery
  • Provides jQuery snippets to enhance your application UX
  • Table of Contents

    1. Cover
    2. Title
    3. Copyright
    4. Dedication
    5. Contents at a Glance
    6. Contents
    7. About the Author
    8. About the Technical Reviewer
    9. Acknowledgments
    10. Introduction
    11. Part I: Getting Started
      1. Chapter 1: CSS—The Secret
        1. Understanding the Selector
          1. The Web Page Is Hierarchical Data
          2. HTML, CSS & jQuery Syntax Examples
          3. SQL Analogy
        2. Understanding Selectors
          1. Tags, IDs, and Classes
          2. Attributes and Operator
          3. Pseudo-Selectors
          4. Browser Feedback
        3. Events
        4. Translating PL/SQL to JavaScript
        5. What’s Available from the Box?
        6. Summary
      2. Chapter 2: jQuery Fundamentals
        1. Including jQuery in Your Page
        2. Getting and Setting
        3. Traversing
          1. Siblings
          2. Ancestry
        4. Chaining
        5. Effects
        6. Callbacks
          1. AJAX Callbacks
          2. Dynamic Actions
        7. Summary
      3. Chapter 3: Browser Tools
        1. Chrome vs. the Rest
        2. Developer Tools
          1. Exploring the Contents of Your Page
          2. Console
          3. Mobile Emulator
        3. Summary
    12. Part II: Integrating into APEX
      1. Chapter 4: Enlarging Content
        1. APEX Application
        2. Enlarging the Region Title
          1. Using Inspect Element to Find the Page Element
          2. Identifying CSS Selector for jQuery
          3. Using a Static Region ID
          4. Inline CSS
        3. Increase Font Sizes throughout the Page
        4. Enlarging Datepicker Elements
        5. Summary
      2. Chapter 5: Firing Dynamic Actions
        1. Creating a New Report Page
        2. Refresh Report on Search
          1. Search Field Listener
          2. Submit page item
        3. Responding to Row Click
          1. Option A: Invoke Custom Event
          2. Option B: Listen for Click Event
        4. Summary
      3. Chapter 6: Implementing jQuery Alternatives
        1. jQuery in APEX
          1. Why Not Use Dynamic Actions?
          2. Where Do I Put My jQuery Code?
          3. Resources
          4. Instrumentation
          5. Naming Conventions
        2. jQuery Style Key Release
        3. Report Link Event Listener
          1. Simplify Anchor URL
          2. Define Row Click Listener
        4. Summary
      4. Chapter 7: Highlighting Selected Row
        1. jQuery Development Pattern
        2. Using Inspect Element
        3. Defining the CSS
        4. Adding the Event Listener
        5. Define the Highlight Function
        6. Summary
      5. Chapter 8: Adding Buttons to Reports
        1. Defining the Button
          1. Deriving the Button Style
          2. Generating the Button
          3. Preparing the Dynamic Action
        2. Gathering Information about the Row
          1. Sending Discrete Values
          2. Using a Dynamic Action to Get Live Information from the Database
          3. Dynamic Action Attributes
          4. Traversing the Tree for Information
          5. Using Data Attributes
        3. Summary
    13. Part III: Playing with Processes
      1. Chapter 9: Choosing Process Options
        1. A Brief History of AJAX
        2. Preparing the APEX Page
        3. Choosing Process Options
          1. The Old htmldb_Get
          2. Declarative Dynamic Actions
          3. Using apex.server.process
        4. Async vs Sync
        5. JSON Output
          1. Applying the Functionality
        6. Summary
      2. Chapter 10: Link a Check Box to a Collection
        1. About APEX Collections
        2. Extending the Report
          1. Add Column to SQL
          2. Edit the Report Column
        3. Listening for the Click Event
        4. Adding PL/SQL Processes
          1. Create PL/SQL Callback
          2. Debug Mode
          3. Initialise Collection
          4. Session Information
        5. User Feedback
        6. Summary
      3. Chapter 11: Using jQuery Dialogs
        1. The Undo Alternative
        2. The Browser Solution
        3. jQuery Dialogs
          1. Priming the Dialog
          2. Opening the Dialog
          3. Calling the Function
          4. Focus the Button
          5. Customizing with CSS
          6. Sourcing a Message from the Database
        4. Defining a Generic Alert
        5. Summary
      4. Chapter 12: Using Modal Forms
        1. A Brief History of Modal Forms in APEX
          1. jQuery Modal
          2. APEX Region Modal
          3. SkillBuilder’s Modal Page Plug-in
          4. APEX 5
        2. Selecting the Right Modal
        3. Using APEX Region Modals
          1. Define Modal Region
          2. Adding a Create Button
          3. Create Dynamic Action
          4. Modifying Report Button DA
          5. Saving the Data
        4. Summary
      5. Chapter 13: Receiving Information from the Database
        1. Using htp.prn
        2. Processing Delimited Data
        3. Larger Data Using JSON
          1. Why Use JSON?
          2. JSON Syntax
          3. Handling JSON within the AJAX Call
          4. Generating JSON
          5. JavaScript APIs
          6. Validating JSON
          7. Undocumented APIs
        4. Summary
    14. Part IV: Reporting Options
      1. Chapter 14: Adding Visualization with JSON
        1. Why Visualizations?
        2. Visualization Libraries
        3. Preparing Data
        4. Preparing a Page
          1. Create Collection
          2. Create AJAX Callbacks
          3. Page Properties
        5. Handling Bugs
          1. PL/SQL Errors
          2. JSON format errors
        6. Summary
      2. Chapter 15: Applying jQuery Post Render
        1. Check Static Region ID
        2. Customize “No Data Found” Message
          1. Include CSS Style
          2. Extend Dynamic Action
          3. Using jQuery after Refresh
        3. Customizing Report Totals
          1. Add Report Totals
          2. Identifying Page Components
        4. Highlighting Cell Backgrounds
          1. Identifying Report Cells
          2. Identifying Cells with Certain Values
          3. Applying Highlight after Refresh
        5. Summary
      3. Chapter 16: Clicking Entire Rows
        1. Method A—Proactive
          1. Taking Care of Performance
          2. Add Column
          3. Add Expression to Report Column
          4. Define jQuery Function
        2. Method B—React, Respond
          1. Prerequisites
          2. Add Listener to Region
        3. Summary
      4. Chapter 17: Customizing Pagination
        1. About Pagination
        2. Prepare Report
        3. Upgrading Pagination
          1. Add JavaScript Function
          2. Invoke Function
        4. Add CSS to Style Buttons
        5. Summary
    15. Part V: Diversifying Techniques
      1. Chapter 18: Customizing Item Help
        1. Define Help Data
          1. Design Time
          2. UI Defaults
          3. Custom Tables
          4. Column Comments
          5. Identifying the Table Name
        2. Modify Label Template
        3. Replace Default Help with Event Listener
          1. Load Static File
          2. Add Listener to Global Page
        4. Define PL/SQL Process
        5. Runtime Test
        6. Performance
          1. Modifying Workflow
          2. Modify Spinner
          3. Caching Information
          4. Touch Lag
        7. Summary
      2. Chapter 19: File Browse Validation
        1. Using Google to Find the Answer
          1. Gathering Information
          2. Using Google
          3. Exploring Viable Results
        2. Using Forums
          1. Stack Overflow
          2. OTN Forums
        3. Translating to APEX
          1. Validate File Extension Using File String
          2. Validate File Extension Using Input Attribute
          3. Validating File Size
          4. Multiple Files
        4. Summary
      3. Chapter 20: CSS Media Queries
        1. What Is a CSS Media Query?
          1. Identifying Device Type
          2. Applying jQuery Logic Based on Media Queries
        2. Using CSS to Configure Printer Layout
          1. Printer-Friendly Templates
          2. Identifying Components for Exclusion
          3. Adding Content for Printer
          4. Add Media Queries
        3. Hiding Columns by Device Orientation
        4. Summary
      4. Chapter 21: Coding for the Future
        1. Embracing Versatility
        2. Don’t Reinvent the Wheel
        3. Learning Process
          1. Debugging
          2. Processes
          3. Namespaces
        4. Performance
          1. Selectors
          2. Caching
          3. Chaining
          4. Event Delegation
          5. Build Content into the Render
          6. Performance Testing
          7. Modularization
        5. Resources
          1. References
          2. Assistance
          3. New Information
        6. Summary
    16. Index