Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    blur() issue on IE

    Hi,

    We are having an issue that blur() for a date field in an editable table doesn't fire when we are trying to leave the edit mode by clicking other records or clicking outside of the table. This issue only happens when "modalEditing" is set to be true and on IE.

    We are using v8.3p_2013-09-01/PowerEdition on IE9/IE10. On firefox, the blur() is fired as expected.

    Please try the following example in Feature Explorer with the datasource "countryDS". Thanks!

    Steps to reproduce:
    1. Click the date field for any record to enter the edit mode.
    2. Click another record or outside the table to leave the edit mode, the blur() is not triggered on IE but is triggered on firefox.

    P.S. In step 2 if we click another field in the same record, for example the "country" column, blur() is correctly fired.

    Code:
    isc.ListGrid.create({
        ID: "countryList",
        width:550, height:224,
        dataSource: countryDS,
        fields:[
            {name:"countryName"},
    		{name:"independence", editorProperties: {blur: function() {isc.warn("Blur is triggered");}}}
        ],
        autoFetchData: true,
        canEdit: true,
        editEvent: "click",
        modalEditing: true
    })

    #2
    Use editorExit() for consistent notification of focus leaving a field. Unlike other event types, focus & blur events cannot be made entirely consistent across browsers because the browsers just fire them at different times (synchronously vs asynchronously).

    Never use isc.warn() (or window.alert()) to troubleshoot or demonstrate a focus issue. These APIs move focus, interfering with what you are trying to debug or demonstrate.

    Comment


      #3
      Thanks for the suggestion! Now we are using editorExit() instead of blur(). However, on IE it still doesn't work (on FF it works).

      Please try the following expample:

      Code:
      var indicator = 0;
      
      isc.ListGrid.create({
          ID: "countryList",
          width:550, height:224,
          dataSource: countryDS,
          fields:[
              {name:"countryName"},
              {name:"independence", editorProperties: {editorExit: function() {myLable.setContents(++indicator);}}}
          ],
          autoFetchData: true,
          canEdit: true,
          editEvent: "click",
          modalEditing: true
      });
      
      isc.Label.create({
      ID: "myLable",
      top: 250,
      contents:indicator
      });
      
      isc.Button.create({
      top: 250,
      title: "Reset Indicator",
      click: function() { indicator = 0; myLable.setContents(indicator);}
      });

      Comment


        #4
        Use listGridField.editorExit, not formItem.editorExit via editorProperties.

        Comment

        Working...
        X