1 Reply Latest reply: Dec 31, 2013 2:33 PM by Martin Giffy D'Souza RSS

    tabular.tabular is undefined

    Martin Giffy D'Souza

      I have a tabular form and have the following situation:

       

      - Add two new rows

      - Enter some invalid data (that I know will fail as part of validations)

      - Submit page

      - Validations detect invalid data and page is reloaded with validation messages

       

      The catch is that only the first added row is displayed. The second (new) row doesn't display. When I look at the console I see the following JS error: tabular.tabular is undefined. I looked at the page source and the second row exists in the JS array that APEX users to reload the page (so the content is there).

       

      I'm running APEX 4.2.2.00.11

      Thanks in advance,

       

      Martin

        • 1. Re: tabular.tabular is undefined
          Martin Giffy D'Souza

          Found the issue. In <apex_images>/libraries/apex/widget.tabular.js around line 361 it looks like:

           

          ...
          Starting at Line 357
                          // For SIMPLE CHECKBOX
                          if ( pDispTypeMap[ i ].indexOf( "SIMPLE_CHECKBOX" ) >= 0 ) {
                              $( "#" + pNewRowMap[ i ] + "_" + lNewRowIdentifier + "_01", apex.gPageContext$ ).each( function() {
                                  lItem = $x( pNewRowMap[ i ] + "_" + lNewRowIdentifier + "_01" );
                                  if ( lItem.value === pNewRowVals[ i ][ ( tabular.tabular.gNewRows - 1 ) ] ) {
                                      $( this ).prop( "checked", true );
                                  }
                              });
                          }
          

           

          On line 7 in above example (line 361 in actual file) tabular.tabular.gNewRows doesn't exist. It looks like a typo and probably should be tabular.gNewRows.

           

          To fix in the minified version modify <apex_images>/libraries/apex/minified/widget.tabular.min.js and search for "tabular.tabular.gNewRows" and replace with "tabular.gNewRows".

           

          Will not file a bug report with the APEX team as it looks like it was resolved in version 4.2.3. There may be a patch for this particular issue for 4.2.2 instances however I was unable to find it.

           

          Martin