Uploaded image for project: 'ZK'
  1. ZK
  2. ZK-3612

Textbox doesn't fire onChange event after being invalidated

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 8.0.3, 8.0.4.2
    • Fix Version/s: 8.0.5
    • Component/s: None
    • Security Level: Jean
    • Labels:
      None

      Description

      Simplified case

      Steps to Reproduce

      1. load the attached zul
      2. enter "ab" in the textbox
      3. label shows "ab"
      4. then enter "i" to invalidate, the label shows "abi"
      5. then enter "cd"

      Current Result

      the label still shows "abi" and no onChange event is fired

      Expected Result

      the label shows as the textbox's value and an onChange event is fired after redrawing

      Debug Info

      1. it doesn't happen before 8.0.2 (included)
      2. the original use case is: a textbox in inside a Listheader, and Listbox redraws itself causes no onChange event fired.

      Root cause

      Workaround

      <script><![CDATA[
      /*
      */
      zk.afterLoad('zul.inp', function() {
      	var xInputWidget = {};
      	zul.inp.InputWidget._onChanging = function (timeout) {
      		
      		if (this.desktop) {
      			var inp = this.getInputNode(),
      				val = this.valueEnter_ || inp.value;
      			if (this._lastChg != val) {
      				this._lastChg = val;
      				var valsel = this.valueSel_;
      				this.valueSel_ = null;
      				if (this.isListen('onChanging'))
      					this.fire('onChanging', zul.inp.InputWidget._onChangeData(this, {value: val}, valsel == val), 
      						{ignorable: 1, rtags: {onChanging: 1}}, timeout || 5);
      				if (this._instant)
      					this.updateChange_();
      			}
      		}
      	}
      });//zk.afterLoad
      ]]></script>
      
      • avoid triggering invalidate()

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              wenninghsu wenninghsu
              Reporter:
              hawk hawk
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 3 hours
                  3h