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

Value is reload after validation fail

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Normal Normal
    • 6.0.1
    • 6.0.0
    • Databind 2
    • None

      <window id="win" title="new page title" border="normal"
      	apply="org.zkoss.bind.BindComposer"
      	viewModel="@id('vm') @init('org.zkoss.zktest.bind.issue.B00912ValueReload')" validationMessages = "@id('vmsgs')">
      	<label multiline="true">
      		1.change textbox to abc, you will see a error message, textbox's value should keep abc
      		2.change textbox to def, the error message was gone, and label value become def
      	</label>
      	<vbox>
      		<hbox>
      			label.
      			<label id="l1" value="@load(vm.value)" />
      		</hbox>
      		<hbox>
      			textbox.
      			<textbox id="tb1"
      				value="@bind(vm[vm.prop]) @validator(vm.validator)" />
      			<label id="msg1" value="@load(vmsgs[tb1])"/>
      		</hbox>
      	</vbox>
      	<button label="dump" onClick="binder.tracker.dump()"/>
      </window>
      
      package org.zkoss.zktest.bind.issue;
      
      import org.zkoss.bind.ValidationContext;
      import org.zkoss.bind.Validator;
      import org.zkoss.bind.validator.AbstractValidator;
      
      public class B00912ValueReload {
      
      	String value = "KGB";
      
      	public String getValue() {
      		return value;
      	}
      
      	public void setValue(String value) {
      		this.value = value;
      	}
      	
      	public String getProp(){
      		return "value";
      	}
      	
      	public Validator getValidator(){
      		return new AbstractValidator(){
      			@Override
      			public void validate(ValidationContext ctx) {
      				if(!"def".equals(ctx.getProperty().getValue())){
      					addInvalidMessage(ctx, "value has to be def");
      				}
      			}
      		};
      	}
      }
      
      

            dennis dennis
            dennis dennis
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: