如何将Java对象绑定到Javascript控件



我正在使用Sencha框架,并使用Javascript创建控件。我想使用Java从数据库中获取一些数据,但不确定如何将该Java对象绑定到sencha创建的控件。我能试试什么?

" Sencha created controls " ?检查Sencha API的控件-复选框,gridpanel等。

在大多数情况下你可能需要使用store配置

直接使用Sencha GXT: "Sencha GXT是使用Java创建丰富的基于web的应用程序的最快、最强大的方法。"

假设您想在sencha中创建一个组合框,那么按如下方式操作:

var javaData = = [
       [1, 'item1']
      ,[2, 'item2']
  ];
var combo = new Ext.form.ComboBox({
store: new Ext.data.SimpleStore({
     id:0
    ,fields:
        [
            'myId',   //numeric value is the key
            'myText' //the text value is the value
        ]
    ,data: javaData
})
,valueField:'myId'
,displayField:'myText'
,mode:'local'

});

将javaData var值替换为来自服务器的数据。请确保数据为json格式以运行此示例。

更多信息:http://www.sencha.com/learn/combobox-faq/

ExtJS存储所做的是对java应用程序上的某个页面进行Ajax调用。该页面将返回JSON格式的数据,以便ExtJS存储可以解析该数据。

基本上,你的后端技术是什么并不重要。您只需要确保您的页面以以下格式返回json:

{
   data: [], //Array of json data
   success: true, //true when your call was handled succesfull
   total: 10 //The total items of a certain object
}
因此,在您的示例中,JSP页面将以JSON格式显示结果,如上所述,您的ExtJS存储将被配置为调用特定的JSP页面。

最新更新