﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-&lt;h3 style="font-family: Comic Sans MS"&gt;&lt;font color="#FA1A0A" size="10"&gt;︻┳═一Java&lt;/font&gt;&lt;/h3&gt;-随笔分类-TIBCO</title><link>http://www.blogjava.net/rain1102/category/37662.html</link><description>&lt;br/&gt;&lt;font color="green" style="font-family: 华文行楷;font-size:16px;"&gt;子曰：危邦不入，乱邦不居。天下有道则见，无道则隐。&lt;/font&gt;&lt;font color="#3C1435"&gt;&lt;/font&gt;</description><language>zh-cn</language><lastBuildDate>Sat, 21 Feb 2009 03:14:24 GMT</lastBuildDate><pubDate>Sat, 21 Feb 2009 03:14:24 GMT</pubDate><ttl>60</ttl><item><title>遍历整个页面查询不同类型的组建</title><link>http://www.blogjava.net/rain1102/archive/2007/06/26/126268.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 26 Jun 2007 02:02:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/06/26/126268.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/126268.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/06/26/126268.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/126268.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/126268.html</trackback:ping><description><![CDATA[<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').searchLink('jsx3.app.Model','method:getDescendantsOfType');"><strong>jsx3.app.Model.getDescendantsOfType<br></strong><br>method getDescendantsOfType(<span>strType, </span><span>bShallow</span>)<br><br>Finds all descendants of the given type.<br>
<h3 class=jsxdoc>Parameters:</h3>
<p class=jsxdoc><span class=jsxdoc_paramname>strType</span> <span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('String');">String</span> | <span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Function');">Function</span> | <span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.lang.Class');">jsx3.lang.Class</span>}<span class=""></span> &#8211; <span class=jsxdoc_paramdesc><span class="">the fully-qualified class name, class constructor function, or <code>jsx3<span class=$><span class=jsxdoc_paramdesc><span class="">.Class instance.<br><font face="Times New Roman"><span class=jsxdoc_paramname>bShallow</span> </font><span class=$><font face="Times New Roman">{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Boolean');">boolean</span>}<span class=""></span> &#8211; </font><span class=jsxdoc_paramdesc><span class=""><font face="Times New Roman">if </font><code>true</code><font face="Times New Roman">, only search direct children, not all <span class=$><span class=jsxdoc_paramdesc><span class="">descendants.</p>
<h3 class=jsxdoc>Returns:</h3>
<p class=jsxdoc><span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Array');">Array</span>&lt;<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.app.Model');">jsx3.app.Model</span>&gt;}<span class=""> &#8211; </span></span><span class=jsxdoc_returndesc><span class="">an array of matching descendants<br><br><strong>for example:</strong><br><br>/**<br>* Bind change events of the specified control and its all children to the specified callback function. <br>* exceptedControlNames don't bind change&nbsp;event<br>*/<br>Eric.bindChangeEvents = function(rootNode, callback, exceptedControlNames) {<br>&nbsp;&nbsp;&nbsp;&nbsp; if (exceptedControlNames == undefined) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exceptedControlNames = [];<br>&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; // bind change events for TextBox<br>&nbsp;&nbsp;&nbsp; var children = rootNode.getDescendantsOfType("jsx3.gui.TextBox");<br>&nbsp;&nbsp;&nbsp; for (var i = 0; i &lt; children.length; i++) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (exceptedControlNames.indexOf(children[i].getName()) == -1) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; children[i].subscribe(jsx3.gui.Interactive.JSXCHANGE, callback);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;}<br>&nbsp;&nbsp;&nbsp; }<br>}</span></span></p>
</span></span></span></font></span></span></span></span></span></span></code></span></span></span></span><img src ="http://www.blogjava.net/rain1102/aggbug/126268.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-06-26 10:02 <a href="http://www.blogjava.net/rain1102/archive/2007/06/26/126268.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tibco的Grid事件中用到的一些属性</title><link>http://www.blogjava.net/rain1102/archive/2007/06/22/125834.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Fri, 22 Jun 2007 06:46:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/06/22/125834.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/125834.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/06/22/125834.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/125834.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/125834.html</trackback:ping><description><![CDATA[obj, objEVENT, strRECORDID, objCOLUMN, strNEWVALUE<img src ="http://www.blogjava.net/rain1102/aggbug/125834.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-06-22 14:46 <a href="http://www.blogjava.net/rain1102/archive/2007/06/22/125834.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>select textbox value when focus on it.</title><link>http://www.blogjava.net/rain1102/archive/2007/05/30/120887.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Wed, 30 May 2007 05:14:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/05/30/120887.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/120887.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/05/30/120887.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/120887.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/120887.html</trackback:ping><description><![CDATA[前两天遇到了一个问题，当textbox组件获得焦点的时候，要选择它的值。而在GI3.4版本中，使用tab键转移焦点默认下就是选择了textbox中的值，而我们现在是触发focus事件，这样当textbox获得焦点的时候，里面的值并没有选上。现在解决的具体办法是：<br>textbox: events editor: focus: this.getRendered().select(); <br><br><span class=""><span><a href="file:///D:/tibco-gi-3.4-pro/api/html/HTMLElement.html" target=classFrame><u><font color=#0000ff>HTMLElement</font></u></a></span></span> getRendered(objGUI<span class="">&nbsp;:&nbsp;<span><a href="file:///D:/tibco-gi-3.4-pro/api/html/Object.html" target=classFrame><u><font color=#0000ff>Object</font></u></a></span> | <span><a href="file:///D:/tibco-gi-3.4-pro/api/html/jsx3/gui/Event.html" target=classFrame><u><font color=#0000ff>jsx3.gui.Event</font></u></a></span></span>)<br>Returns handle/reference to the JSX GUI Object's on-screen counterpart—basically a handle to a DHTML object such as a DIV, SPAN, etc<br>
<h4 class=detail>Parameters:</h4>
<p class=detail><span class=param>objGUI</span> &#8211; <span class=jsxdoc_paramdesc>either the HTML document containing the rendered object or an HTML element in that document. This argument is optional but improves the efficiency of this method if&nbsp; <span class=jsxdoc_paramdesc>provided。<br></p>
<h4 class=detail>Returns:</h4>
<p class=detail>IE DHTML object</p>
</span></span><img src ="http://www.blogjava.net/rain1102/aggbug/120887.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-05-30 13:14 <a href="http://www.blogjava.net/rain1102/archive/2007/05/30/120887.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>为Matrix单元格添加数据（无刷新）</title><link>http://www.blogjava.net/rain1102/archive/2007/05/24/119807.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 24 May 2007 12:44:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/05/24/119807.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/119807.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/05/24/119807.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/119807.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/119807.html</trackback:ping><description><![CDATA[&nbsp;
<p><span>之前修改后者往</span><span>Matrix</span><span>添加一行记录的时候，都是用</span><span><br><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/Entity.html" target=classFrame>jsx3.xml.Entity</a> insertRecord(objRecord&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Object.html" target=classFrame>Object</a>&lt;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, <a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>&gt;, strParentRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, bRedraw&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Boolean.html" target=classFrame>boolean</a>)</span><span>或者</span><span>void insertRecordNode(objRecordNode&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/Entity.html" target=classFrame>jsx3.xml.Entity</a>, strParentRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, bRedraw&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Boolean.html" target=classFrame>boolean</a>)</span><span>方法。</span><span><br></span><span>通过对两个方法的参数或者对</span><span>insertRecordNode</span><span>方法的说明：</span><span>Inserts a new record into the XML data source of this object. This method is the same as insertRecord() except that its first parameter is of type jsx3.xml.Entity rather than Object.</span><span>可以看出只是一个是对象，而后者则是一个</span><span>Entity </span><span>。而这两种方法的最后一个参数也有说明：</span><span>bRedraw &#8211; if true or null, the on-screen view of this object is immediately updated to reflect the additional record.<br></span><span>但这时候遇到了一个就是更新单元格的数据，而之前我们做的时候都是通过</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/Entity.html" target=classFrame>jsx3.xml.Entity</a> getRecordNode(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>)</span><span>方法把当前选上的记录先获取到。然后再通过</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/Entity.html" target=classFrame>jsx3.xml.Entity</a> setAttribute(strName&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, strValue&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>)</span><span>方法设置单元值。最后还要利用</span><span>void repaintData()</span><span>方法刷新数据。这样才可以把修改后的值显示出来。其中对</span><span>repaintData</span><span>解释是：</span><span>Paints only the data rows. Call for quick repainting of the data rows when only the source data has changed. Does not recalculate and reprofile the box profile and resulting XSLT. Retains scroll position when possible.<br><br></span><span>而最近看到了另一个方法：</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/CDF.html" target=classFrame>jsx3.xml.CDF</a> insertRecordProperty(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, strPropName&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, strPropValue&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, bRedraw&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Boolean.html" target=classFrame>boolean</a>)</span><span>；而这方法正好解决了单元格值的变化，</span><span>Inserts a new property into an existing record with jsxid equal to strRecordId. If the property already exists, the existing property value will be updated. If no such record exists in the XML document, this method fails quietly.<br><br></span><span>另注：获取单行记录还有另一个方法：</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/Object.html" target=classFrame>Object</a>&lt;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, <a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>&gt; getRecord(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>)</span><span>；他与</span><span>getRecordNode</span><span>返回的类型不同，他返回的是对象。我们可以通过说明：</span><span>Returns an object containing the attributes of a particular CDF record as property/value pairs. The object returned by this method is a copy of the underlying data. Therefore, updates to this object will not affect the underlying data.</span><span>看出。他是一个克隆，也就是对其操作并不影响</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/CDF.html" target=classFrame>jsx3.xml.CDF</a></span><span>里面的值。而当修改</span><span>getRecordNode</span><span>返回的</span><span>Entity</span><span>将会影响到</span><span><a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/xml/CDF.html" target=classFrame>jsx3.xml.CDF</a></span><span>。</span><span>getRecordNode</span><span>的说明中就可以体现这一点。</span><span>Returns a record from the XML data source of this object. This returned value is a handle to the record and not a clone. Therefore, any updates made to the returned value with update the XML document of this object. To reflect such changes in the on-screen view of this object, call redrawRecord(strRecordId, jsx3.xml.CDF.UPDATE); on this object.</span><span>这里还说到了另一个方法</span><span>redrawRecord(strRecordId, jsx3.xml.CDF.UPDATE); </span><span>这就相当与单行刷新。当然比使用</span><span>void repaintData()</span><span>方法刷新数据好的多了。</span><span><br></span><span>当然还有别的方法。例如</span><span>Matrix</span><span>里面还有一个实现就是：</span><span>void redrawCell(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, objColumn&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/jsx3/gui/Matrix.Column.html" target=classFrame>jsx3.gui.Matrix.Column</a>, bSuppressTriggers&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Boolean.html" target=classFrame>boolean</a>)</span><span>；</span><span>Updates the on-screen cell to reflect the value in the CDF document to which the cell is mapped.</span><span>和</span><span>void redrawMappedCells(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, strAttName&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>)</span><span>；</span><span>Updates the on-screen cell to reflect the value in the CDF document to which the cell is mapped.</span><span>以及对</span><span>void redrawRecord(strRecordId&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/String.html" target=classFrame>String</a>, intAction&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Number.html" target=classFrame>int</a>, bRecurse&nbsp;:&nbsp;<a href="file:///E:/tibco-gi-3.4-pro/api/html/Boolean.html" target=classFrame>boolean</a>)</span><span>的实现。</span><span><br></span><span>所以当修改单行的单元格数据的时候看个人爱好了。</span></p><img src ="http://www.blogjava.net/rain1102/aggbug/119807.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-05-24 20:44 <a href="http://www.blogjava.net/rain1102/archive/2007/05/24/119807.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>add scroll bars</title><link>http://www.blogjava.net/rain1102/archive/2007/05/24/119799.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 24 May 2007 12:03:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/05/24/119799.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/119799.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/05/24/119799.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/119799.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/119799.html</trackback:ping><description><![CDATA[今天遇到一个问题，就是在layout组件上面一层是block组件。想让此block组件加个滚动条设置了很长时间都没有成功。但后来在layout与block中间再加一层block。这样滚动条就呈现在眼前了。<img src ="http://www.blogjava.net/rain1102/aggbug/119799.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-05-24 20:03 <a href="http://www.blogjava.net/rain1102/archive/2007/05/24/119799.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>让Grid单行不能编辑</title><link>http://www.blogjava.net/rain1102/archive/2007/05/22/119054.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 22 May 2007 02:04:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/05/22/119054.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/119054.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/05/22/119054.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/119054.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/119054.html</trackback:ping><description><![CDATA[jsxdisabled = "1" on the following:<br>Datepicker icon: calender comes up but can't select a date. Disabled.<br>Datepicker textbox: Edit is saved to CDF. Not disabled.<br>Text Field column: Edit is saved to CDF. Not disabled.<br>Checkbox: Disabled<br>Select: Edit is saved to CDF. Not disabled. <br><br>
<p>Set property for "Before Edit" with following code fragment ：
<pre><font color=navy><strong>if</strong></font> (this.getRecord(strRECORDID).jsxdisabled == 1) <font color=navy><strong>false</strong></font>;
</pre><img src ="http://www.blogjava.net/rain1102/aggbug/119054.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-05-22 10:04 <a href="http://www.blogjava.net/rain1102/archive/2007/05/22/119054.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jsx3.gui.Event</title><link>http://www.blogjava.net/rain1102/archive/2007/04/23/112974.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Mon, 23 Apr 2007 08:19:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/04/23/112974.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/112974.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/04/23/112974.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/112974.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/112974.html</trackback:ping><description><![CDATA[<p><span><strong>jsx3.gui.Event</strong></span><br>enterKey()<br>method enterKey()<br>Returns true if the enter key was pressed.<br>Returns:<br>{boolean} &#8211;</p>
<p><br><strong>jsx3.gui.Event</strong><br>keyCode()<br>method keyCode()<br>Returns integer representing the key code of the key just pressed/keyed-down.<br>Returns:<br>{int} &#8211; keycode<br><br>&nbsp;I have two jsx3.gui.TextBox fields and the first one has an event handler set on the "Key Down" property.<br>----------<br>Key Down: nextField(this,objEVENT);<br>----------<br><br>function nextField(objJSX,objEvent){<br>var keyCode = objEvent.keyCode();<br><br>if (keyCode == 13) {<br>objEvent.cancelKey();<br>objEvent.cancelBubble();<br>objEvent.setKeyCode(jsx3.gui.Event.KEY_TAB);<br>objJSX.doEvent(jsx3.gui.Interactive.JSXKEYDOWN, {objEVENT:objEvent});<br>}<br>}<br></p><img src ="http://www.blogjava.net/rain1102/aggbug/112974.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-04-23 16:19 <a href="http://www.blogjava.net/rain1102/archive/2007/04/23/112974.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jsx3.gui.Matrix.EditMask.emGetSession</title><link>http://www.blogjava.net/rain1102/archive/2007/04/19/111997.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 19 Apr 2007 09:30:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/04/19/111997.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/111997.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/04/19/111997.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/111997.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/111997.html</trackback:ping><description><![CDATA[<h2><span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.Matrix.EditMask');">jsx3.gui.Matrix.EditMask</span></h2>
<h1>emGetSession()</h1>
final method emGetSession()<br><br><span class="">Returns the state of the current edit session if this object is involved in a <code>jsx3.gui.Matrix</code> edit mask session. The state has the following keys:<br><span class="">
<ul>
    <li>matrix {jsx3.gui.Matrix}</li>
    <li>column {jsx3.gui.Matrix.Column}</li>
    <li>recordId {String}</li>
    <li>td {HTMLElement}</li>
</ul>
<h3 class=jsxdoc>Returns:<span class=$><span class="">&#8211; <span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Object');">Object</span>&lt;<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('String');">String</span>, <span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Object');">Object</span>&gt;}<span class=""></span></span></span></span><span class=jsxdoc_returndesc><span class="">the edit session.</span></span></h3>
</span></span><img src ="http://www.blogjava.net/rain1102/aggbug/111997.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-04-19 17:30 <a href="http://www.blogjava.net/rain1102/archive/2007/04/19/111997.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用jsx3.gui.Splitter对象的setSubcontainer1Pct()方法</title><link>http://www.blogjava.net/rain1102/archive/2007/04/06/108970.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Fri, 06 Apr 2007 08:35:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/04/06/108970.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/108970.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/04/06/108970.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/108970.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/108970.html</trackback:ping><description><![CDATA[<strong>jsx3.gui.Splitter</strong><br><strong>setSubcontainer1Pct()<br></strong>method setSubcontainer1Pct(<span>strSubcontainerPct, </span><span>bView</span>)<br>Sets a valid percentage (e.g., 100.00% 23.567%) that will be applied to the on-screen element as its CSS width/height percentage<br><strong>Parameters:<br></strong><span class=jsxdoc_paramname>strSubcontainerPct</span> <span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('String');">String</span>}</span> &#8211; <span class=jsxdoc_paramdesc>valid CSS width property as a percentage (e.g., 34.56%)<br><span class=jsxdoc_paramname>bView</span> <span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Boolean');">boolean</span>}</span> &#8211; <span class=jsxdoc_paramdesc>false if null; if true the view is updated automatically without a repaint<br><strong>Returns:</strong><br><span class=$>{<span class=jsxdoc_link onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.Splitter');">jsx3.gui.Splitter</span>}&#8211; <span class=jsxdoc_returndesc>this object</span></span></span></span> <br><br>eg：<br>service.menuMinimize = function(menuToggle,isSelf) {<br>&nbsp;&nbsp; if (isSelf != null) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (isSelf == 0) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; menuToggle.setState(menuToggle.getState() == 0 ? 1 : 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp; }<br>&nbsp;&nbsp; var menuSplitter = csa.getServer().getJSXByName('splitter_menuright');<br>&nbsp;&nbsp; if (!menuToggle.getState()){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; menuSplitter.setSubcontainer1Pct("95.86",true);<br>&nbsp;&nbsp; } else {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; menuSplitter.setSubcontainer1Pct("67.70",true);<br>&nbsp;&nbsp; }<br>}<br><img src ="http://www.blogjava.net/rain1102/aggbug/108970.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-04-06 16:35 <a href="http://www.blogjava.net/rain1102/archive/2007/04/06/108970.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Get data access the mapped CDF document</title><link>http://www.blogjava.net/rain1102/archive/2007/04/05/108620.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 05 Apr 2007 02:12:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/04/05/108620.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/108620.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/04/05/108620.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/108620.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/108620.html</trackback:ping><description><![CDATA[Instead of getting the InboundDocument, you can simply access the mapped CDF document. If you watched the video then you know how to use the Mapping Utility to create your CDF from the service reponse.<br><br>In the video a CDF document named "quotes" was created, you can access this document from the cache with <br><br>
<pre>doc = &lt;namespace&gt;.getCache().getDocument(<font color=navy>'quotes'</font>)
iter = doc.selectNodes(<font color=navy>'//record'</font>).iterator();
jsx3.log(iter.next().getAttribute(<font color=navy>'High'</font>));
jsx3.log(iter.next().getAttribute(<font color=navy>'High'</font>));
</pre><img src ="http://www.blogjava.net/rain1102/aggbug/108620.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-04-05 10:12 <a href="http://www.blogjava.net/rain1102/archive/2007/04/05/108620.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>让Select第一次显示时候就显示里面的数据</title><link>http://www.blogjava.net/rain1102/archive/2007/03/30/107494.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Fri, 30 Mar 2007 07:52:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/30/107494.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/107494.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/30/107494.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/107494.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/107494.html</trackback:ping><description><![CDATA[今天使用Select的时候，想在第一次显示的时候，就把数据显示出来。<br />其实只要设置Select的value为你想要显示的值，然后在调用Web Service中方法成功的时候使用repaint()就可以了！<br />例如：<br />service.ongetCountriesResultSuccess = function(objEvent) {<br />&#160;&#160;&#160;&#160;&#160;&#160; objEvent.target.getServer().getJSXByName("country").repaint();<br />&#160;&#160;&#160;&#160;&#160; //var responseXML = objEvent.target.getInboundDocument();<br />&#160;&#160;&#160;&#160;&#160; //objEvent.target.getServer().alert("Success","The service call was successful.");<br />};<br /><br /><div class="jsxdoc_methoddecl"><div class="jsxdoc"><div class="jsxdoc_methodhead"><h2><span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.Painted');">jsx3.gui.Painted</span></h2><h1>repaint()</h1></div><hr /><div class="jsxdoc_methoddecl">method repaint() </div><div class="jsxdoc_methoddesc">Updates the view of this object by calling <code>paint()</code> and replacing the current view with the returned HTML. This method has no effect if this object is not currently displayed.</div><h3 class="jsxdoc">Returns:</h3><div class="jsxdoc_return"><span class="$">{<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('String');">String</span>} &#8211; </span><span class="jsxdoc_returndesc">the result of calling <code>paint()</code> or <code>null</code> if this object is not displayed.</span></div><h3 class="jsxdoc">See Also:</h3><div class="indent"><span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doSeeLink('method:repaint',1);">paint()</span></div></div></div><img src ="http://www.blogjava.net/rain1102/aggbug/107494.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-30 15:52 <a href="http://www.blogjava.net/rain1102/archive/2007/03/30/107494.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用doValidate()对前端用户输入验证</title><link>http://www.blogjava.net/rain1102/archive/2007/03/30/107431.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Fri, 30 Mar 2007 03:01:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/30/107431.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/107431.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/30/107431.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/107431.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/107431.html</trackback:ping><description><![CDATA[<div class="jsxdoc">
				<div class="jsxdoc_methodhead">
						<h2>
								<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.Form');">jsx3.gui.Form</span>
						</h2>
						<h1>doValidate()</h1>
				</div>
				<hr />
				<div class="jsxdoc_methoddecl">abstract method doValidate() </div>
				<div class="jsxdoc_methoddesc">Abstract method that must be implemented by any class that implements the Form interface.</div>
				<h3 class="jsxdoc">Returns:</h3>
				<div class="jsxdoc_return">
						<span class="$">{<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Number');">int</span>} &#8211; </span>
						<span class="jsxdoc_returndesc">
								<code>STATEINVALID</code> or <code>STATEVALID</code>.<br /><br />例如Text Box中的输入验证<br /><br /><div class="jsxdoc"><div class="jsxdoc_methodhead"><h2><span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.TextBox');">jsx3.gui.TextBox</span></h2><h1>doValidate()</h1></div><hr /><div class="jsxdoc_methoddecl">method doValidate() </div><div class="jsxdoc_methoddesc">validates form field, ensuring it contains the correct data set</div><h3 class="jsxdoc">Returns:</h3><div class="jsxdoc_return"><span class="$">{<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Boolean');">boolean</span>} &#8211; </span><span class="jsxdoc_returndesc">true if field contains a valid value given @VALIDATIONTYPE</span></div><h3 class="jsxdoc">Overrides:&#160; <code><span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doMemberLink('overrides:doValidate');">doValidate</span></code> in <code><span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('jsx3.gui.Form');">jsx3.gui.Form</span></code></h3></div></span>
				</div>
		</div><img src ="http://www.blogjava.net/rain1102/aggbug/107431.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-30 11:01 <a href="http://www.blogjava.net/rain1102/archive/2007/03/30/107431.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>让GI中的Gird组件的数据自动显示</title><link>http://www.blogjava.net/rain1102/archive/2007/03/29/107317.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 29 Mar 2007 12:00:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/29/107317.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/107317.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/29/107317.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/107317.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/107317.html</trackback:ping><description><![CDATA[这几天一直在学TIBCO公司的GI，当然也遇到了一些的小问题。其中有一个就是，利用Grid组件显示一组数据的时候。每次都要点一下grid才可以显示数据。然后看了他们自带的例子发现，原来只要调用一个方法就可以自动显示数据了。<br />rain1102.APP.getJSXByName("gridResults").<font color="#006400">repaintData</font>();<br /><br />jsx3.gui.Matrix<br /><div class="jsxdoc_methoddecl">method repaintData() </div><div class="jsxdoc_methoddesc">Paints only the data rows. Call for quick repainting of the data rows when only the source data has changed. Does not recalculate and reprofile the box profile and resulting XSLT. Retains scroll position when possible.</div><img src ="http://www.blogjava.net/rain1102/aggbug/107317.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-29 20:00 <a href="http://www.blogjava.net/rain1102/archive/2007/03/29/107317.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jsx3.net.Service中的doInboundMap()和setInboundDocument(objXML) 方法</title><link>http://www.blogjava.net/rain1102/archive/2007/03/29/107254.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 29 Mar 2007 08:41:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/29/107254.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/107254.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/29/107254.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/107254.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/107254.html</trackback:ping><description><![CDATA[<div class="jsxdoc_methoddecl">method doInboundMap() </div>
		<div class="jsxdoc_methoddesc">Applies all inbound mappings, using the server response document as the source for the operation. This method can only be called if 'doCall' has executed and the server has responded. Although this method is called once automatically, it can be called at any time to reapply the mapping rules. Example usage: var oService = new jsx3.net.Service(); oService.setInboundDocument(objSomeDocumentIManuallyWantToLoad); oService.doInboundMap();<br /><br /><div class="jsxdoc_methoddecl">method setInboundDocument(<span>objXML</span>) </div><div class="jsxdoc_methoddesc">Sets a parsed instance of the <b>response</b> document as soon as it returns from the server returned from the service; otherwise null</div></div><img src ="http://www.blogjava.net/rain1102/aggbug/107254.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-29 16:41 <a href="http://www.blogjava.net/rain1102/archive/2007/03/29/107254.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TIBCO中的jsx3.gui.Block的setVisibility()方法使用</title><link>http://www.blogjava.net/rain1102/archive/2007/03/28/106908.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Wed, 28 Mar 2007 03:48:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/28/106908.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/106908.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/28/106908.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/106908.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/106908.html</trackback:ping><description><![CDATA[<div class="jsxdoc">
				<div class="jsxdoc_methodhead">
						<h2>setVisibility()</h2>
				</div>
				<hr />
				<div class="jsxdoc_methoddecl">method setVisibility(<span>VISIBILITY, </span><span>bRepaint</span>) </div>
				<div class="jsxdoc_methoddesc">Sets the CSS visibility property the object</div>
				<h3 class="jsxdoc">Parameters:</h3>
				<div class="jsxdoc_param">
						<span class="jsxdoc_paramname">VISIBILITY</span>
						<span class="$">{<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('String');">String</span>}</span> &#8211; <span class="jsxdoc_paramdesc">[jsx3.gui.Block.VISIBILITYVISIBLE, jsx3.gui.Block.VISIBILITYHIDDEN]</span></div>
				<div class="jsxdoc_param">
						<span class="jsxdoc_paramname">bRepaint</span>
						<span class="$">{<span class="jsxdoc_link" onclick="jsx3.html.getJSXParent(this).getAncestorOfName('jsx_ide_api').doClassLink('Boolean');">boolean</span>}</span> &#8211; <span class="jsxdoc_paramdesc">if <code>true</code>, the view of this object is immediately updated, obviating the need to call <code>repaint()</code>.</span></div>
		</div><img src ="http://www.blogjava.net/rain1102/aggbug/106908.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-28 11:48 <a href="http://www.blogjava.net/rain1102/archive/2007/03/28/106908.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TIBCO中的Select组件</title><link>http://www.blogjava.net/rain1102/archive/2007/03/27/106740.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 27 Mar 2007 11:28:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/27/106740.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/106740.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/27/106740.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/106740.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/106740.html</trackback:ping><description><![CDATA[<font color="#006400">
				<font color="#000000">今天使用TIBCO中的Select组件,其中select的记录值是调用web service中的方法，然后返回数组，数组中包含多个对象．</font>
				<br />The jsx3.gui.Select uses the attribute "jsxtext" as the display field.<br /></font>
		<font color="#000000">上的意思就是要想把属性值显示给select，则必须把属性映射的名字设置成"<font color="#006400">jsxtext</font>";<br /><br />而我又想把对象的ID值传给select的value属性。查了一下文档看到，<font face="Courier New">jsxid属性，于是就试了一下！果然可以！<br />因为select有个getValue() method 文档描述为： 
<div class="jsxdoc_methoddesc">Returns the value of this select box. The value is the <code>jsxid</code> attribute of the selected CDF record.<br /><br />还有一点，就是，当你把一个值既想作为select的显示值又想作为真实值的时候。则应该把该属性做两个映射，分别为jsxid和jsxtext！</div></font></font><img src ="http://www.blogjava.net/rain1102/aggbug/106740.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-27 19:28 <a href="http://www.blogjava.net/rain1102/archive/2007/03/27/106740.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>some question in tibco gi</title><link>http://www.blogjava.net/rain1102/archive/2007/03/27/106635.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 27 Mar 2007 04:03:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/27/106635.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/106635.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/27/106635.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/106635.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/106635.html</trackback:ping><description><![CDATA[1.Suppose i have 50 records in a matrix and using mapping i want to send only those records to BW which are selected.. how can we do this?<br />&#160;&#160; <font color="#006400">appname.getCache().getDocument('MTX_DATA_XML').selectNodes('//record[@jsxselected="1"]');</font><br />2.<br /><strong>format 1:<br /></strong>&lt;data jsxid="jsxroot"&gt;<br />&lt;record jsxtext="Jame Paulis" jsxid="1" office="1018" status="Interview" experience="3" longivity="1" &gt;&lt;/record&gt;<br />&lt;record jsxtext="James" jsxid="2" office="1019" status="GD" experience="3" longivity="2" &gt;&lt;/record&gt;<br />&lt;data/&gt;<br /><br /><font color="#006400">&#160;</font><b>format 2:</b><br />&lt;data&gt;<br />&lt;record&gt;<br />&lt;ID&gt;1&lt;/ID&gt;<br />&lt;office&gt;1018&lt;/office&gt;<br />&lt;status&gt;Interview&lt;/status&gt;<br />&lt;experience&gt;3&lt;/experience&gt; <br />&lt;longivity&gt;1&lt;/longivity&gt;<br />&lt;/record&gt;<br />&lt;record&gt;<br />&lt;ID&gt;2&lt;/ID&gt;<br />&lt;office&gt;1019&lt;/office&gt;<br />&lt;status&gt;Group Discussion&lt;/status&gt;<br />&lt;experience&gt;0&lt;/experience&gt; <br />&lt;longivity&gt;3&lt;/longivity&gt;<br />&lt;/record&gt;<br />&lt;/data&gt;<br /><font color="#006400">var nodeValueExp = objDoc.selectSingleNode("//record[ID='1']/experience").getValue();</font><br /><br />The following XSL will produce the output you wanted in format 2:<br /><pre>&lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"&gt;<br />	&lt;xsl:template match="/"&gt;<br />		&lt;xsl:element name="data"&gt;<br />			&lt;xsl:for-each select="//record"&gt;<br />			&lt;xsl:element name="record"&gt;<br />			&lt;xsl:for-each select="@*"&gt;<br />			&lt;xsl:choose&gt;<br />				&lt;xsl:when test="name()='jsxid'"&gt;&lt;xsl:element name="ID"&gt;&lt;xsl:value-of select="."/&gt;&lt;/xsl:element&gt;&lt;/xsl:when&gt;<br />				&lt;xsl:when test="name()='jsxtext'"&gt;&lt;/xsl:when&gt;<br />				&lt;xsl:otherwise&gt;&lt;xsl:element name="{name()}"&gt;&lt;xsl:value-of select="."/&gt;&lt;/xsl:element&gt;&lt;/xsl:otherwise&gt;<br />			&lt;/xsl:choose&gt;<br />			&lt;/xsl:for-each&gt;<br />			&lt;/xsl:element&gt;<br />			&lt;/xsl:for-each&gt;<br />		&lt;/xsl:element&gt;<br />	&lt;/xsl:template&gt;<br />&lt;/xsl:stylesheet&gt;<br /><br /><br /><br />You can use this XPath for format1:<br /><pre><br /><font color="#006400">//record[@jsxid='1']/@experience<br /><br /></font><br /></pre><pre>3.Is there a way to select items in a Select by pressing keys? For example I have a alphabetized list of States. I want to be able to press 'A' 4 times to move from Alabama, to Alaska, to Arizona, to Arkansas. Then I want to be able to press tab and move on to a zip code field. This should leave Arkansas selected.<br /><br />This is the normal behavior for a simple html select box and I want to stick to what people are familiar with.<br /><br /></pre><pre><font color="#006400"><pre>function handleKeyPress(objSelect,objEvent) {
  //resolve the key the pressed;only listen for numbers and letters
  var intKey = objEvent.keyCode();
  var strKey = String.fromCharCode(intKey);
  if(strKey.search(/[a-z0-9]/i) == -1) return true;
  var objKey = new RegExp(strKey,"i");

  //get list of options for the select
  var objXML = objSelect.getXML();
  var objTextNodes = objSelect.getXML().selectNodes("//record[@jsxtext]");

  //query the select box to see if the same key was pressed before; if so begin searching at he correct index
  var objState = objSelect.custom_index || {};
  objState[strKey] = (objState[strKey] != null) ? objState[strKey] : 0;
  var intIndex = (objState[strKey] &lt; objTextNodes.getLength()) ? objState[strKey] : 0;
  jsx3.log("index: " + objState[strKey]);


  objState[strKey] = 0;
  return true;
};


function handleKeyPress(objSelect,objEvent) {
  //resolve the key the pressed;only listen for numbers and letters
  var intKey = objEvent.keyCode();
  var strKey = String.fromCharCode(intKey);
  if(strKey.search(/[a-z0-9]/i) == -1) return true;
  var objKey = new RegExp(strKey,"i");

  //get list of options for the select
  var objXML = objSelect.getXML();
  var objTextNodes = objSelect.getXML().selectNodes("//record[@jsxtext]");

  //query the select box to see if the same key was pressed before; if so begin searching at he correct index
  var objState = objSelect.custom_index || {};
  objState[strKey] = (objState[strKey] != null) ? objState[strKey] : 0;
  var intIndex = (objState[strKey] &lt; objTextNodes.getLength()) ? objState[strKey] : 0;
  jsx3.log("index: " + objState[strKey]);

  //loop to find the next item in the list that begins with the given key
  for(var i=intIndex;i&lt;objTextNodes.getLength();i++) {
    if(objTextNodes.getItem(i).getAttribute("jsxtext").search(objKey) == 0) {
      objSelect.custom_index = {};
      objSelect.custom_index[strKey] = i+1;
      objSelect.setValue(objTextNodes.getItem(i).getAttribute("jsxid"));
      return false;
    }
  }

  //loop from 0 to current index to find the first item in the list that begins with the given key.(wrap around)
  //following was added by dlehman
  for(var i=0;i&lt;intIndex;i++) {
    if(objTextNodes.getItem(i).getAttribute("jsxtext").search(objKey) == 0) {
      objSelect.custom_index = {};
      objSelect.custom_index[strKey] = i+1;
      objSelect.setValue(objTextNodes.getItem(i).getAttribute("jsxid"));
      return false;
    }
  }
  
  objState[strKey] = 0;
  return true;
};
</pre></font><br /><br /><br /></pre></pre><img src ="http://www.blogjava.net/rain1102/aggbug/106635.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-27 12:03 <a href="http://www.blogjava.net/rain1102/archive/2007/03/27/106635.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在TIBCO中创建页面跳转</title><link>http://www.blogjava.net/rain1102/archive/2007/03/26/106508.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Mon, 26 Mar 2007 12:16:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/26/106508.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/106508.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/26/106508.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/106508.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/106508.html</trackback:ping><description><![CDATA[<p>jsx3.lang.Package.definePackage(<br />&#160; "eg.service",&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; //the full name of the package to create<br />&#160; function(service) {&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; //name the argument of this function<br /><br />&#160;&#160;&#160; /**<br />&#160;&#160;&#160;&#160; * Clear work area<br />&#160;&#160;&#160;&#160; *<br />&#160;&#160;&#160;&#160; * @param bvpWorkArea {jsx3.app.Model} the JSX object to be cleared.<br />&#160;&#160;&#160;&#160; * @param objJSX {jsx3.app.Server}&#160; (target of the model event).<br />&#160;&#160;&#160;&#160; */<br />&#160;&#160;&#160; service.clearWorkArea = function(workArea) {<br />&#160;&#160;&#160;&#160;&#160;&#160; workArea.removeChildren();<br />&#160;&#160;&#160; };</p>
		<p>&#160;&#160; /**&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160; * Launches reset password page. <br />&#160;&#160;&#160; * @param objJSX {jsx3.app.Model} target of the model event.<br />&#160;&#160;&#160; */<br />&#160;&#160;&#160; service.resetPassword = function(objJSX) {<br />&#160;&#160;&#160;&#160;&#160; var workArea = objJSX.getServer().getJSXByName("bvpWorkArea");<br />&#160;&#160;&#160;&#160;&#160; service.clearWorkArea(workArea);<br />&#160;&#160;&#160;&#160;&#160; workArea .load("components/resetPassword.xml");&#160; <br />&#160;&#160;&#160; };</p>
		<p>&#160;&#160;&#160; /**&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; * Launches register page. <br />&#160;&#160;&#160;&#160; * @param objJSX {jsx3.app.Model} target of the model event.<br />&#160;&#160;&#160;&#160; */<br />&#160;&#160;&#160; service.register = function(objJSX) {<br />&#160;&#160;&#160;&#160;&#160; var workArea = objJSX.getServer().getJSXByName("bvpWorkArea");<br />&#160;&#160;&#160;&#160;&#160; service.clearWorkArea(workArea);<br />&#160;&#160;&#160;&#160;&#160; workArea .load("components/register.xml");&#160; <br />&#160;&#160;&#160; };</p>
		<p>&#160;&#160;&#160; /**&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; * Launches cancel page. <br />&#160;&#160;&#160;&#160; * @param objJSX {jsx3.app.Model} target of the model event.<br />&#160;&#160;&#160;&#160; */<br />&#160;&#160;&#160; service.cancel = function(objJSX) {<br />&#160;&#160;&#160;&#160;&#160; var workArea = objJSX.getServer().getJSXByName("bvpWorkArea");<br />&#160;&#160;&#160;&#160;&#160; service.clearWorkArea(workArea);<br />&#160;&#160;&#160;&#160;&#160; workArea .load("components/appCanvas.xml");&#160; <br />&#160;&#160;&#160; };</p>
		<p>
				<br />&#160; }<br />);</p>
		<p>&#160;</p><img src ="http://www.blogjava.net/rain1102/aggbug/106508.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-26 20:16 <a href="http://www.blogjava.net/rain1102/archive/2007/03/26/106508.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TIBCO(一)</title><link>http://www.blogjava.net/rain1102/archive/2007/03/22/105581.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Thu, 22 Mar 2007 08:13:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/archive/2007/03/22/105581.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/105581.html</wfw:comment><comments>http://www.blogjava.net/rain1102/archive/2007/03/22/105581.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/105581.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/105581.html</trackback:ping><description><![CDATA[<p>实现即时的企业整合与流程管理软体厂商－美资巴士软体（TIBCO），日前发表TIBCO General Interface 3.3。新版的建构基础，是TIBCO经过业界实证的多样化网际网路应用程式（Rich Internet Application；RIA）开发解决方案，利用非同步通讯、JavaScript及XML（AJAX）技术，使功能完整、丰富的网站应用程式的开发更迅速，建置更有效率。</p>
		<p>　新版软体包含TIBCO General Interface Framework及TIBCO General Interface Builder两个元件，开发人员结合这两个元件，可开发出完全在标準网页瀏览器中执行的应用程式。这是一个免安装的架构，不需用户端软体、终端使用者外掛程式、ActiveX控制项或Java应用小程式。</p>
		<p>　TIBCO General Interface Framework将强大功能加入网页瀏览器中，如可扩充的多元GUI元件程式库、用户端资料快取、事件拖放功能及背景通讯等。TIBCO General Interface Builder是在此架构上层的网页瀏览器执行，它提供「所见即所得」的版面设计、可连接伺服器的视觉工具、JavaScript的逐步除错工具及其他省时的公用程式。此外，还能协助简化AJAX开发的复杂性，将原生的网页瀏览器应用程式设计介面（API）压缩成一套可重复使用的统一应用程式物件及视觉开发工具。</p><img src ="http://www.blogjava.net/rain1102/aggbug/105581.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-03-22 16:13 <a href="http://www.blogjava.net/rain1102/archive/2007/03/22/105581.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>