backbase 是一个企业级的AJAX框架
它分成二部分 js引挚bpc(backbase presentation client)和标签(B,S)
它的命名空间是xmlns:b=http://www.backbase.com/b,xmlns:s=http://www.backbase.com/s
BXML 是 stands forBackbase eXtensible Markup Language
三部分:
System tags (s:tags)
Backbase controls (b:tags)
Generic attributes (b:tags)
Events and commands (b:tags)
XPathis a language for addressing parts of anXMLdocument
以下是一些问题的解答
xml 代码
-
- 1. How to access data entered to the datagrid by the user?
- 每个能够编辑的列都有一个控件实例来供用户输入新的值,这个控件实例就在<b:datatype>中定义,并且这个实例被整个列的所有单元格共享。如果想在用户输入之后立即得到新值,可以相应这个实例的blur事件,用户输入的值一般在value 属性中存储。例如:
- <b:datatype b:name="text">
- <input type="text" value="default" >
- <s:event b:on="blur">
- <s:task b:action="alert" b:value="{@value}" />
- s:event>
- input>
- b:datatype>
- 选中的单元格的HTML引用在b:datagrid实例的datagrid-selected-cells 变量中存储。访问这个变量就可以知道当前选中的单元格。
-
- 如果想在用户对整个页面编辑之后一起提交所有的更改。可以使用如下代码:
- <b:button>send changes
- <s:event b:on="command">
- <s:task b:action="send" b:source="id('datagrid1')/b:datagridbody/html()/table/tbody/tr[@b:status]" b:destination="id('datagrid1')" b:url="response.jsp" b:mode="replace" />
- <s:task b:action="remove" b:target="id('datagrid1')/b:datagridbody/html()/table/tbody/tr/@b:status" />
- s:event>
- b:button>
- 在上述代码中,datagrid的id是datagrid1,当用户点击这个按钮的时候,就会把所有编辑过的行发送到服务器端。并用服务器返回的新的整个的datagrid数据替换现有的。 注意,一旦有一个单元格被编辑过,它所在行的b:status属性就被摄制了updated,当提交完所有的更改之后需要手动删除这个属性,以恢复到其初始状态。当然服务器返回的数据可以是一个成功与否的标志,不需要是整个datagrid的数据,如果想手动解析服务器返回数据,可以把返回的数据存储到一个变量中。这个变量在send task的b:destination属性中被指定。
-
-
- 2. Can you control only loading the focused window?
- B:window的b:open属性指定是否默认状态下窗口是显示的,并不制定何时装载窗口数据。如果需要当窗口打开的时候再装载数据,可以手动相应b:window的show事件。并用load命令装载数据并插入到窗口中。请看如下代码:
- <b:button>
- load on open
- <s:event b:on="command">
- <s:task b:action="show" b:target="id('window')"/>
- s:event>
- b:button>
- <b:window id="window" b:open="false" style="left:100px; top:100px">
- <b:windowhead>
- Title
- b:windowhead>
- <b:windowbody>
-
- b:windowbody>
- <s:event b:on="show">
- <!---->
- <s:task b:action="load" b:url="iframe.xml" b:destination="b:windowbody" b:mode="replacechildren" b:test="count(b:windowbody/*) = 0" />
- s:event>
- b:window>
- 其中的iframe.xml文件包含了<iframe> tag, 比如:
- <!---->xml version=”1.0”?>
- <iframe src=”f.do?” style=”width:100%;height:100%;overflow:hidden;”>iframe>
- 3. How to control add/delete new records in the datagrid?
- 在客户端删除行可以调用datagrid的delete-row方法。请看如下代码:
- <div>
- Delete selected rows
- <s:event b:on=”command”>
- <s:task b:action="trigger" b:event="delete-row" b:target="id(datagrid1)" />
- s:event>
- div>
- 当行被删除以后此行的b:status属性会被自动设置成deleted.可以用xpath检测这个属性来得知那些行被删除了,以便提交到服务器端,类似的检测和提交代码请参照第一个问题的示例代码。
-
- 添加新行需要首先发送一些数据通知服务器端,告诉服务器需要添加一个新行,同时也可以使用一些初始化值,然后等待服务器端发送整个datagrid,包含已经添加的新行到客户端。
-
- 发送添加新行的通知可以使用send命令,例子如下:
- <b:button>
- Add New Row
- <s:event b:on="command">
- <!---->
- <s:variable b:name="request">
- <request>
- <addrow>
- <cell>this is initial data for column 1cell>
- <cell>this is initial data for column 2cell>
- addrow>
- request>
- s:variable>
- <!---->
- <s:task b:action="send" b:url="server.jsp" b:source="$request" b:destination="id('datagrid1')" b:mode="replace" b:autoroot="false" />
- s:event>
- b:button>
分享到:
相关推荐
**Backbase Client Edition 4.7 功能展示** Backbase Client Edition 4.7 是Backbase公司推出的一款强大且功能丰富的Web应用开发平台,专为构建现代化、交互式的银行和其他金融服务界面而设计。该版本主要关注提升...
Backbase已经商业化了,商业化之前的最后版本就是4.7了。兼容各种浏览器的Web前端框架,自定义标签使用非常方便。
BackBase是一个不错的ajax框架,在此上传一个不错的BackBase api
《PacktPub.Backbase.4.RIA.Development.Dec.2009.rar》是一个压缩文件,其中包含了关于Backbase 4 Rich Internet Application (RIA) 开发的详细资料,特别是出版于2009年12月由Packt Publishing发布的电子书...
Backbase API 是一个专为构建企业级数字体验平台而设计的框架,其核心在于提供一套强大的工具和服务,帮助开发者创建华丽、高效的用户界面。在Backbase框架中,API(Application Programming Interface)扮演着至关...
后台 CXP 组件Backbase CXP 演示包。 在开发环境中使用 Launchpad 11 原型进行测试。安装说明 cd {your-backbase-project}git clone ...
一个不错的框架,直接放到tomcat下就可以使用
$ cd backbase-angular $ npm install $ bower install ####测试: $ grunt test 生成器预装了并与集成进行测试 ####服务器: $ grunt serve ####建造 $ grunt build 关于这个发电机 ###Backbase ####...
新的 Backbase 小部件依赖结构的提案该提案最初是为,但可以与任何类型的独立前端小部件一起使用。 大部分结构描述在这个 README 文件中定义,包括安装工具 ( backbase-cli install ) 逻辑。 项目源中还列出了一些...
Backbase OpenApi工具Backbase Open API Tools是为与OpenAPI高效协作而创建的一系列工具目前由RAML 1.0转换器到OpenAPI 3.0 在相同规格的2个OpenAPI版本之间创建差异报告(基于 ) 分解Transformer从OpenAPI规范中...
Backbase Golden Sample MicroServices系统该项目是基于 ( Spring Boot和Cloud )的微项目的一小部分开发,这些项目实现了云原生的直观,微服务设计模式和编码最佳实践。 该项目遵循建议和构建软件即服务应用程序的...
Backbase 特定的 Sublime 片段Backbase sublime 片段,如 gadget 命名空间标签和 jstl/core。 有两个带有自己的选项卡完成短代码的片段包。用法: 将它们放在您的 Sublime Text 应用程序支持文件夹中:~/Library/...
【标题】"backbase_atm" 指的可能是一个基于Backbase平台的ATM(自动取款机)系统项目,这个系统可能是用Java语言开发的。Backbase是一家知名的数字银行平台提供商,其产品通常用于构建银行和其他金融机构的在线和...
Backbase后端测试 要启动,请运行:mvn spring-boot:run 然后,执行GET http请求至: 即 回复 {“ com.backbase.model.GeocodeResponse”:{“ formatted__address”:“ Castellumweg 11,2314 TZ Leiden,...
###Lightweight Backbase 主题服务器此存储库将 zip 解压缩到您的/theme文件夹中在/theme文件夹中$ npm install运行$ npm install的依赖项运行$ gulp命令。 这将运行默认任务。 如果你还没有只需输入$ npm install ...
Backbase Launchpad-CLI 工具用于小部件/模块的 Backbase Launchpad 构建信息名称版本节点bb-lp-cli 0.0.3 >= 0.10安装 npm i bb-lp-cli -g用法使用bblp作为二进制文件。 bblp build
backbase-build-钛 用于压缩和构建 Titanium App 小部件的 Grunt 配置
利维阿芬 这是在Backbase Hackathon 2015期间开发的移动应用程序。 它显示了NFC对等数据发送如何使付款过程变得更加容易。 为了构建此应用程序,我们使用了Ionic,PhoneGap和NFC插件。