[RemoteClass(alias="flex.samples.product.Product")]、前台和后台的数据更新举例
2011-06-15 19:13
429 查看
【问题描述】
点击左侧的表格,数据的信息将在右侧显示出来,此时更改右侧的数据,左侧的表格也将改变,这是前端的数据更新,刷新页面时数据又回到更新前
如果点击update按钮,则进行的是后台的数据更新,这意味着如果刷新网页,更改仍起效果
【代码分析】
前端的主文件mxml中有这样的代码
用被选中的数据list.selectedItem实例化一个Product,并将这个对象赋值给product这个ProductForm。
(这里的Product()调用的是前台的Product.as中的实例化函数,在这个文件中有这么一条语句
而在ProductForm中
这段代码是将product的各个值在TextInput 控件中显示出来
紧接着ProductForm中有这样的代码
进行的是前台的更新,这个更新是和TextInput控件中的更新同时发生的。
后台的更新则需要在点击update按钮时触发
点击左侧的表格,数据的信息将在右侧显示出来,此时更改右侧的数据,左侧的表格也将改变,这是前端的数据更新,刷新页面时数据又回到更新前
如果点击update按钮,则进行的是后台的数据更新,这意味着如果刷新网页,更改仍起效果
【代码分析】
前端的主文件mxml中有这样的代码
<ProductForm product="{Product(list.selectedItem)}"/>
用被选中的数据list.selectedItem实例化一个Product,并将这个对象赋值给product这个ProductForm。
(这里的Product()调用的是前台的Product.as中的实例化函数,在这个文件中有这么一条语句
[RemoteClass(alias="flex.samples.product.Product")]作用是将前台的Product.as和后台的Product.java映射在一起,这样从后台的getProduct()方法取回的Product返回到前台就用Product.as类来代表,而前台传给后台的Product类到了后台就被当成Product.java类来处理)
而在ProductForm中
<mx:Form width="100%"> <mx:FormItem label="Name"> <mx:TextInput id="productName" text="{product.name}"/> </mx:FormItem> <mx:FormItem label="Category"> <mx:TextInput id="category" text="{product.category}"/> </mx:FormItem> <mx:FormItem label="Image"> <mx:TextInput id="image" text="{product.image}"/> </mx:FormItem> <mx:FormItem label="Price"> <mx:TextInput id="price" text="{product.price}"/> </mx:FormItem> <mx:FormItem label="Description" width="100%"> <mx:TextArea id="description" text="{product.description}" width="100%" height="100"/> </mx:FormItem> </mx:Form>
这段代码是将product的各个值在TextInput 控件中显示出来
紧接着ProductForm中有这样的代码
<Product id="product" name="{productName.text}" category="{category.text}" price="{Number(price.text)}" image="{image.text}" description="{description.text}"/>
进行的是前台的更新,这个更新是和TextInput控件中的更新同时发生的。
后台的更新则需要在点击update按钮时触发
<mx:ControlBar> <mx:Button label="Update" click="srv.update(product);"/> </mx:ControlBar>
相关文章推荐
- [RemoteClass(alias="com.test..entities.AEntity")]
- asp.net后台长时间操作时,向前台输出“请等待"信息的方法
- Flex从后台读取数据前台显示为层次的树形结构
- Flex 前台与后台数据互转
- PL/SQL编辑数据"这些查询结果不可更新,请包括ROWID或使用SELECT...FOR UPDATE获得可更新结果"处理
- VC6.0使用ODBC连接ACCESS数据库遭遇"多行数据被更新"的解决方法
- 解决C#后台返回json数据双引号转义为"问题
- 前台调用后台方法,无刷新更新数据
- 使用BlazeDS实现java与flex传对象时,RemoteClass中包含自己写的类,后台无法转换的问题
- Ext.data.Record前台的"数据库行数据"
- 关于使用Ajax传中文数据到后台接受乱码问题 data:{"dictype":"客户信誉度"}
- 初步搭建yui-ext(Ajax)的开发环境(第一部分:后台->前台数据交换)
- 接口参数如果后台返回"<null>",IOS 前台会崩溃,返回“”OK
- [Asp.net]前台获取的数据时undefiend,后台却判断是不是null,导致后台得到的数据是"undefined",
- form enctype:"multipart/form-data",method:"post" 提交表单,后台获取不到数据
- 前台后台数据交互之Servlet & XMLHttpRequest(POST篇)
- 初步搭建yui-ext(Ajax)的开发环境(第二部分:前台->后台数据交换)
- 修改$("form:first").serialize(); 中某一名称的checkbox一个均未选择, 取不到name, 后台无法更新为null的错误
- js提交数据到后台(json)," 被转译 成了"
- 使用BlazeDS实现java与flex传对象时,RemoteClass中包含自己写的类,后台无法转换的问题