ICEfaces
  1. ICEfaces
  2. ICE-11014

ace:textEntry, replace input element when setting it to type="password"

    Details

    • Assignee Priority:
      P1

      Description

      The issue described in ICE-10978 is caused by browsers and jQuery not allowing to dynamically change the type attribute of the input element. This wasn't an issue in the past, on most browsers, but it seems like recent browser updates turned this into an issue. Because this is illegal, an error occurs and the init script is aborted before the component is fully set up in the client. This was previously avoided by simply wrapping the statements that modify the type attribute of the input field (from 'text' to 'password' and vice versa, for supporting inField labels) inside try-catch clauses. This way, the error didn't occur and somehow the change in the type attribute still succeeded. In order to prevent issues with future updates, caused by the browsers being more strict about not changing the type attribute on input elements, a more robust way of changing the value of this attribute would be to replace the previous input element with a copy of it that has its type attribute changed as desired. This will require major changes in the client-side code of ace:textEntry, since it will be necessary to re-apply all event listeners and behaviours to the new input elements that replace the old ones when a change in the type attribute is required.

        Issue Links

          Activity

          Repository Revision Date User Message
          ICEsoft Public SVN Repository #48675 Fri Apr 29 16:37:04 MDT 2016 art.zambrano ICE-11014 improvement to place the cursor at the end of the text when focusing the text field in secret/password mode
          Files Changed
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/resources/icefaces.ace/textentry/textentry.js
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #48672 Thu Apr 28 15:26:36 MDT 2016 art.zambrano ICE-11014 improvement to replace the entire input element when setting it to type="password" and vice versa, instead of simply changing the type attribute on the same element object
          Files Changed
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/resources/icefaces.ace/textentry/textentry.js

            People

            • Assignee:
              Arturo Zambrano
              Reporter:
              Arturo Zambrano
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: