Changing constraints on the fly

Posted by GoinOff on Stack Overflow See other posts from Stack Overflow or by GoinOff
Published on 2010-04-01T16:31:05Z Indexed on 2010/04/01 16:33 UTC
Read the original article Hit count: 294

Filed under:
|
|

Hi,

I have a dijit.form.NumberTextBox input field that starts out with these parms:

 new dijit.form.NumberTextBox({
    id: din1,
    style: "width:60px",
    constraints: {
        places: 0,
        pattern: '######'
      }
    },
    din1);

Everything works great..My question is I would like to change 'places' and 'pattern' parms on the fly. So I wrote this to change 'places' and 'patterns' parms:

var myFldObj = dijit.byId(din1);
if (myFldObj) {
  var myConstObj = myFldObj.attr('constraints');
  if (myConstObj) {
     myConstObj.places = 2;
     myConstObj.pattern = '#####.0';
  }
}

So, after I show the form again, I'd expect the entry field to allow 2 decimal places but the form still acts like places=0 and pattern='######'. When I check the values of 'places' and 'pattern' I get what I'd expect (2 and #####.0). My question:

Can you change these values on the fly??

OR

Do you have to destroy the original dijit object and recreate with new parms??

Thx!!

© Stack Overflow or respective owner

Related posts about dojo

Related posts about dijit