I guess this is part of a larger design question. Should the Dynapi code check for invalid arguments to calls?
Having the no property error error appear is functionally a thrown error. > Not sure if I understand. Is this a request to change something? I'm not > too familiar with this portion of the API, and not sure how this might > affect other code, but see my proposed changes below (expanded for ease of > readability). > > The line 99: > > if(typeof(index)=='number') return > {text:o[index].text,value:o[index].value}; > > Is proposed to be changed to something like this? > > 96 | p.getItem = function( index ) > 97 | { > 98 | if ( this.getElm() ) > 99 | { > 100 | var o = this.elm.options; > 101 | > 102 | if ( typeof( index ) == 'number' && ( index >= 0 || index < > o.length) > 103 | { > 104 | return { text:o[index].text, value:o[index].value }; > 105 | } > 106 | else if ( typeof( index ) == 'undefined' ) > 107 | { > 108 | return( null ); > 109 | } > 110 | else > 111 | { > 112 | for( var i = 0; i < o.length; i++ ) > 113 | { > 114 | if ( index == o[i].value ) > 115 | { > 116 | return { text:o[i].text, value:o[i].value }; > 117 | } > 118 | } > 119 | } > 120 | } > 121 | }; > > Leif > > ----- Original Message ----- > From: <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Friday, September 05, 2003 12:22 AM > Subject: [Dynapi-Dev] Index out of bound in htmltextbox getItem > > > > > > What is the correct thing to do here? > > > > The simple thing would be to return null if o[index] is not a valid > > option. > > > > Test choices: > > if index < 0 || index >= o.length > > o[index] === undefined > > > > > > > > Error: o[index] has no properties > > Source File: dynapi3x/src/gui/htmllistbox.js > > Line: 99 > > > > 96 p.getItem = function(index){ > > 97 if(this.getElm()) { > > 98 var o = this.elm.options; > > 99 if(typeof(index)=='number') return > {text:o[index].text,value:o[index].value}; > > else { > > for(var i=0;i<o.length;i++) if(index==o[i].value) return { > > text:o[i].text, > > value:o[i].value > > } > > } > > } > > }; > > > > > > ------------------------------------------------------- > > This sf.net email is sponsored by:ThinkGeek > > Welcome to geek heaven. > > http://thinkgeek.com/sf > > _______________________________________________ > > Dynapi-Dev mailing list > > [EMAIL PROTECTED] > > http://www.mail-archive.com/[EMAIL PROTECTED]/ > > > > > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Dynapi-Dev mailing list > [EMAIL PROTECTED] > http://www.mail-archive.com/[EMAIL PROTECTED]/ > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Dynapi-Dev mailing list [EMAIL PROTECTED] http://www.mail-archive.com/[EMAIL PROTECTED]/