亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Think of Ext2.0 (1)

系統 1693 0

Ext2.0 的選擇需要冒很大的風險,確實 Ext 在界面上能夠有很大的提升,但是客戶端機器的性能和網絡方面的制約,再加上 Ext 本身沒有很好的實現工具支持。從編碼角度來說,可能需要花費更多的時間,這相對于直接的 Web 開發。如果項目中缺少美工,又對訪問性能或并發量不是特別的要求的 Web 開發,可以考慮使用,譬如說安全設備的控制界面。當然項目組成員必須忍受大量 javascript 編碼。 ?

一般來說, Ext 使用如下:

Ext 作為前臺, Spring-Hibernate-Stucts 作為整體的控制層, json-lib 作為兩者的交互。

當然后臺是什么無所謂了,主要就是 json 字符串的拼湊

流程稍微記錄了一下,后面有些不想寫了,所以邏輯有些混亂。 ?

1. ???????? Json-Lib

導入依賴庫

commons-beanutils.jar

commons-collections-3.1.jar

commons-lang-2.1.jar

commons-logging.jar

ezmorph-1.0.4.jar

json-lib-2.2-jdk15.jar ?

測試 Bean

public ? class ?TestBean? ... {
????String?date1?
= ? " 111 " ;
????
int ?date2? = ? 10 ;?
????
public ?String?getDate1()? ... {
????????
return ?date1;
????}

????
public ? void ?setDate1(String?date1)? ... {
????????
this .date1? = ?date1;
????}

????
public ? int ?getDate2()? ... {
????????
return ?date2;
????}

????
public ? void ?setDate2( int ?date2)? ... {
????????
this .date2? = ?date2;
????}


}

測試代碼

????????JSONObject?jsonBean? = ?JSONObject.fromObject( new ?TestBean());
????????System.out.println(jsonBean);
????????
????????List?list?
= ? new ?ArrayList();
????????list.add(
new ?TestBean());
????????list.add(
new ?TestBean());
????????
????????JSONArray?jsonList?
= ?JSONArray.fromObject(list);
????????System.out.println(jsonList);

輸出:

{"date1":"111","date2":10}

[{"date1":"111","date2":10},{"date1":"111","date2":10}] ?

正式使用再做一下字符串處理

?

2. ???????? Ext 使用

將整個 Ext2.0 的目錄導入到 MyEclipse 中去

Docs 可以全部刪去, example 也可刪去部分

只保留 examples 根目錄下的內容

examples\examples.js 中的開頭修改成

Ext .BLANK_IMAGE_URL = 'ext-2.0/resources/images/default/s.gif' ;

將指向 Ext 網站的 s.gif 文件指向本地 ?

添加 ext-fix.js 修正 radio Form 控件從 json 數據獲取信息時,工作不正常的問題

Ext.form.BasicForm.prototype.setValues? = ? function (values) ... {???
??????
if (values? instanceof ?Array) ... {????????????????
??????????
for ( var ?i? = ? 0 ,?len? = ?values.length;?i? < ?len;?i ++ ) ... {???
??????????????
var ?v? = ?values[i];???
??????????????
var ?f? = ? this .findField(v.id);???
??????????????
if (f) ... {???
??????????????????
if ?(?f.getEl().dom.type? == ? ' radio ' ?)? ... {???
??????????????????????
var ?group? = ? this .el.dom.elements[f.getName()];???
??????????????????????
for ?( var ?i = 0 ;?i? < ?group.length;?i ++ ?)? ... {???
??????????????????????????
if (group[i].__ext_field)? ... {???
??????????????????????????????group[i].__ext_field.setValue(group[i].value?
== ?v);???
??????????????????????????????
if ( this .trackResetOnLoad) ... {???
??????????????????????????????????group[i].__ext_field.originalValue?
= ?group[i].__ext_field.getValue();???
??????????????????????????????}
???
??????????????????????????}
???
??????????????????????}
???
???????????????}
???
????????????????
else ??
?????????????????
... {???
????????????????????f.setValue(v.value);???
??????????????????
if ( this .trackResetOnLoad) ... {???
????????????????????????f.originalValue?
= ?f.getValue();???
???????????????????}
???
???????????????}
???
????????????}
???
????????}
???
????}
else ... {???
???????
var ?field,?id;???
???????
for (id? in ?values) ... {???
????????????
if ( typeof ?values[id]? != ? ' function ' ? && ?(field? = ? this .findField(id))) ... {???
???????????????
if (?field.getEl().dom.type? == ? ' radio ' ?)? ... {???
???????????????????
var ?group? = ? this .el.dom.elements[field.getName()];???
????????????????????
for ?( var ?i = 0 ;?i? < ?group.length;?i ++ ?)? ... {???
????????????????????????
if (group[i].__ext_field)? ... {???
????????????????????????????group[i].__ext_field.setValue(group[i].value?
== ?values[id]);???
????????????????????????????
if ( this .trackResetOnLoad) ... {???
???????????????????????????????group[i].__ext_field.originalValue?
= ?group[i].__ext_field.getValue();???
????????????????????????????}
???
???????????????????????}
???
????????????????????}
???
???????????????}
???
????????????????
else ??
????????????????
... {???
????????????????????field.setValue(values[id]);???
???????????????????
if ( this .trackResetOnLoad) ... {???
?????????????????????????field.originalValue?
= ?field.getValue();???
????????????????????}
???
????????????????}
???
????????????}
???
?????????}
???
????}
???
????
return ? this ;???
?}
???
??
???
??
?Ext.form.Radio.prototype.onRender?
= ? function (ct,?position)? ... {???
??Ext.form.Radio.superclass.onRender.call(
this ,?ct,?position);???
???
this .el.dom.__ext_field? = ? this ;???
?}
???
??
?Ext.form.Radio.prototype.setValue?
= ? function (v)? ... {???
?????
if (v? === ? true ? || ?v? === ? ' true ' ? || ?v? == ? ' 1 ' ? || ?v? === ? false ? || ?v? === ? ' false ' ? || ?v? == ? ' 0 ' )?

Think of Ext2.0 (1)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日日夜夜天天干干 | 精品久久久久久中文字幕专区 | 午夜性色福利视频在线视频 | 国产福利免费视频 | 在线a亚洲视频播放在线观看 | 九九精品在线 | 2018一级毛片免费观看 | 久久精品中文字幕首页 | 四小虎免费永久观看 | 久久久久久人精品免费费看 | 青草青草久热精品视频99 | 国产欧美久久一区二区 | 91香蕉嫩草 | 亚洲视频第二页 | 国产精品女在线观看 | 久久久久久久免费视频 | 99热久久精里都是精品66 | 91精品国产91久久久久福利 | 9久热久re爱免费精品视频 | 在线观看国产精品入口 | 狠狠久久亚洲欧美专区 | a免费在线观看视频 | 中文字幕亚洲欧美一区 | 日日摸日日碰夜夜97 | 久久国产中文字幕 | 99精品久久久久久久婷婷 | 久草视频网址 | 中文字幕婷婷 | 亚洲日本在线观看 | 亚洲在线视频播放 | 国产精品原创永久在线观看 | 欧洲一区在线观看 | 一本大道高清香蕉中文大在线 | 亚洲综合激情五月色播 | 伊人爱爱网 | 国产精品久久久久久久网站 | 欧美午夜精品一区二区三区 | 中文字幕免费视频 | 成年超爽大片免费视频播放 | 亚洲视频一区在线观看 | 综合色桃花久久亚洲 |