首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenLaszlo DataPointer不能正常工作

OpenLaszlo DataPointer不能正常工作
EN

Stack Overflow用户
提问于 2012-09-08 18:11:29
回答 1查看 126关注 0票数 1

我有一个下面的代码片段,它在OL 3.3和OL 4.9中给出了预期的结果。

当我将代码与我的OL4.9应用程序集成时,出于某种原因,我在Openlaszlo4.9中得到的'parts‘为null。我想不出其中的原因。下面的代码正确吗?

OL3.3

代码语言:javascript
复制
<canvas>
<attribute name="result" />
<attribute name="dp" value="$once{new LzDatapointer()}" />
<handler name="onresult">
    _populateList();
</handler>
<method name="_populateList">
            var node = LzDataNode.stringToLzData(result);
            Debug.write('_populateList' , node);
            dp.setPointer(node);
            Debug.write('_populateList dp' , dp);
            var parts = dp.xpathQuery('tracker');
            Debug.write("parts::" , parts);
            var partsArray = new Array();
            if ( parts instanceof LzDataNode ) {
                partsArray[0] = parts;
            }
            else if ( parts instanceof Array ) {
                partsArray = parts;
            }           
</method>
<button name="sample">Click Me
<handler name="onclick"><![CDATA[
    canvas.setAttribute('result','<root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root> ');
]]></handler>
</button>       
</canvas>

OL4.9

代码语言:javascript
复制
<canvas>
<attribute name="result" />
<attribute name="dp" value="$once{new lz.datapointer()}" />
<handler name="onresult">
    _populateList();
</handler>
<method name="_populateList" >
        var node = lz.DataElement.stringToLzData(result);
            Debug.write('_populateList' , node);
            dp.setPointer(node);
            Debug.write('_populateList dp' , dp);
            var parts = dp.xpathQuery('tracker');
            Debug.write("parts::" , parts);
            var partsArray = new Array();
            if ( parts instanceof lz.DataElement ) {
                partsArray[0] = parts;
            }
            else if ( parts instanceof Array ) {
                partsArray = parts;
            }           
</method>

<button name="sample">Click Me

<handler name="onclick"><![CDATA[
    canvas.setAttribute('result','<root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root> ');
]]></handler>
</button>
</canvas>
EN

回答 1

Stack Overflow用户

发布于 2012-09-08 19:38:08

这可能是4.9唯一的问题。我使用flex4.6分支进行了测试,下面是我的输出。

flex4.6分支,swf11运行时:

代码语言:javascript
复制
_populateList «LzDataElement#0| <root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root>» 
_populateList dp «<datapointer>#1| <root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root>» 
parts:: «LzDataElement#2| <tracker sequence_number="1" next="NULL"/>»

flex4.6分支,DHTML运行时

代码语言:javascript
复制
_populateList «LzDataElement#0| <root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root>»
_populateList dp «<datapointer>#1| <root><child1/><child2><sub/><sub/></child2><tracker sequence_number="1" next="NULL"/></root>»
parts:: «LzDataElement#2| <tracker sequence_number="1" next="NULL"/>» 

您看到的4.9的输出是什么?我没有在这里安装用于测试的4.9。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12329833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档