Buffalo自动绑定表单Select数据的一个例子

本文介绍了一个优秀的Ajax框架Buffalo,并通过实例展示了如何使用该框架实现HTML元素Select与Java对象的数据绑定。具体步骤包括定义Java类返回数据、创建HTML元素、编写JavaScript绑定代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      Buffalo是一个优秀的 Ajax 实现框架,它实现了Javascript Object与Java Object之间的双向序列化,并且提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。值得可喜的是这个优秀的框架是国内的大牛写的,业界类似的实现还有 DWR 框架。

    下面是做项目的一个记录,实现HTML元素 Select 与 Java 对象自动数据绑定。

一、JAVA 类
      下面是代码片断:     

   public Object[] listDictChannelDd() {
      List list = new java.util.ArrayList();
      for (int i=0;i<6;i++) {
          DictValueBean bean = new DictValueBean();
          bean.setLabel("广东Vnet_" + i);
          bean.setValue(String.valueOf(i+1));
          list.add(bean);
      }

      return list.toArray();
   }

二、DictValueBean类的代码实现非常简单,它只有两个属性 label 和 value,并且有它们的 setter 和 getter 方法

  public class DictValueBean implements Serializable {
private String value;
private String label;

/**
* @return Returns the label.
*/
public String getLabel() {
return label;
}
/**
* @param label The label to set.
*/
public void setLabel(String label) {
this.label = label;
}
/**
* @return Returns the value.
*/
public String getValue() {
return value;
}
/**
* @param value The value to set.
*/
public void setValue(String value) {
this.value = value;
}
}

三、下面是HTML代码片断:

   <select name="payChannel" id="payChannel"
         jtext="label" jvalue="value">
   </select>

   相信细心的读者,应该看出这里的jtext 和 jvalue 的作用了:没错,它就是对应 DictValueBean 类的 label 属性和 value 属性的。

四、下面是Javascript代码片断:

   var springEndPoint = webContext + "/bfapp";//Ajax remote url
   var buffalo = new Buffalo(springEndPoint);

   buffalo.bindReply('gdvnetAutopayService.listDictChannelDd',[],'payChannel');

   这里的 'payChannel'是对应HTML页面的 select 元素的 id 名称。

这样,就完成我们的HTML Select元素与Java Object的数据绑定了。

 原帖: http://huaronghu.spaces.live.com:80/blog/cns!b9a68e1c1ca857ad!132.entry
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值