3.6 Ajax應用

1) 數據交互模式
    a) Ajax是前臺發出請求;
    b) 後臺對請求進行解析,並返回結果;
    c) 前臺處理返回結果並顯示。
    前臺發出請求比較簡單,爲了保證順利傳輸,需要進行適當的編碼。
    前臺處理後臺的返回結果也涉及編碼和解碼的過程,同時也需要約定傳輸的格式。
    對於成熟的一些產品,規則可能很複雜,也很龐大。對於一般的系統,我們也可以自己寫一個簡單的解析類,這樣不但很精簡,擴展也很方便。
2) 常用的Ajax實現的控件
    通過Ajax實現的控件常用的有輸入框(輸入編碼或部分內容查找匹配的內容,如果是多條,提供列表進行選擇)、多級關聯列表(如省市縣等)。
3) 如何標準化
    寫一個前後臺交互過程挺麻煩,寫第二個能好點,但是一套系統可能會有很多,如果規劃,才能便於擴展呢?
    最簡單的方法是每一個類型對應一條sql,前端只需要傳輸特定的參數,這樣,實現其它的Ajax就很方便。如果需要對用戶的sql進行權限過濾,只需要把用戶的sql拆成幾部分即可,當然也可以採用字符串替換等辦法。
    這裏把一個Ajax的輸入封裝成這樣的方法:   
    input(pt,pt2,pv,where,type,func)
        pt    輸入框的對象
        pt2   隱藏域的對象(取到的結果,把值放在隱藏域)
        pv    隱藏域的對象(取到的結果,把值對應的代碼放在隱藏域中)
        where 查詢的條件
        type  查詢類型
        func  後處理函數,用於特殊處理
    返回值,如果操作正常,返回true,否則false
    後臺的配置文件
    <node
     type="物資"
     table="數據庫表名"
     value="編碼字段"
     text="顯示字段"
     order="排序字段"
     like="(條件字段1 LIKE UPPER('%#value#%') OR 條件字段2 LIKE UPPER('%#value#%') )"
    ></node>
    這裏能達到的效果是,對於新的類型,只需要配置文件增加一項,程序不用修改,可以直接使用,我想不能更簡單了。 

 

    對於多級關聯列表,過程比較複雜,要求也高,這裏就不多說了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章