| 1.Freeform拥有和Treelist一样的输入控件，支持计算表达式、输入掩码、各种下拉、事件, 以及Enter、Tab、Shift+Tab键的全键盘操作； 2.“模拟提交”实际上是取得表中的数据XML串而已，需要进一步通过Http Post给应用服务器；

1.上面的Freeform是根据一个XML描述文件创建的；
2.此XML简练易懂，也适合在服务器端动态生成；
3.源码分析：页面中创建Freeform控件实例的HTML如下，直接调用了 dynaload.js 中的insertFreeForm( )函数：

    <div style="position:relative;width:800px%;height:380px">
     <script>insertFreeForm('AF', '')</script>  //对象名为AF
    </div>

页面中和Freeform有关的js源码是:

     //Freeform触发的页面事件
     function OnReady(id)
     {
      AF.func("Build", "treelist/freeform1.xml");
     }
     //按钮调用的js
     function getxml()
     {
      var xml = AF.func("GetChangedXML", "")
      xml = xml.replace(/\r\n/g, "\\r\\n");
      AF.func("MessageBoxFloat", xml + "\r\n title=Warning; icon=Information; hold=0");
     }

| 使用够简单吧！