Hàm ForEach nâng cao

 * Cú pháp đầy đủ
 1. EachHeader , EachFooter
 2. Distinct
 3. Compute
 4. Xuất Json
----


** 02/02/2023 phải làm có 2 chế độ tùy chọn:
    Nếu không có bảng ghi:
          Cũng hiển thị Hearder, Footer
          Không hiển thị Hearder, Footer

Cú pháp đầy đủ:

<iif-F>
<IfNotRow>Nếu không có dòng nào in ra câu này</IfNotRow>
           -> Hiển thị vùng ItemF (chưa làm...)
<iIfNotRowCreateRow></iIfNotRowCreateRow>
<IfExitsRow>Nếu có dữ liệu in ra câu này</IfExitsRow>
          -> Hiển thị vùng EachHeader, phải chèn lệnh #IfNotRow# trong EachHeader
<Distinct></Distinct>
<EachHeader></EachHeader>
<EachFooter></EachFooter>
<Paging>
    <Commond>
         PageSize:10
         RequestName:
         PageDefault:
         Url:
   </Commond>
  #item_For_S#  htm.. #item_For_E#
  #item_For_Activate_S#  htm..  #item_For_Activate_E#
  #item_Back_S# html..  #item_Back_E#
  #item_Next_S#  html.. #item_Next_E#
</Paging>

<ItemF>
   + <%i=TieuDe=i%>
</ItemF>  
#PagingHTML#      
</iif-F>

1. EachHeader , EachFooter
- Chèn #RowCount# sẽ in ra tổng số bảng ghi.
- Chèn #IfExitsRow#  lấy html <IfNotRow>...</IfNotRow>
- Chèn #IfNotRow# lấy html <IfExitsRow>...</IfExitsRow>

Ví dụ:

Bọc thẻ ul
<iif-F>
<EachHeader> Tổng bản ghi: #RowCount# <ul></EachHeader>
<ItemF>
   <li> <%i=TieuDe=i%> </li>
</ItemF>
<EachFooter></ul></EachFooter>
</iif-F>


* iIfNotRowCreateRow

2. Distinct
Tạo bảng nhóm dữ liệu
<Distinct>TenCot1,TenCot2</Distinct> , nếu nhiều cột cách nhau dấu ,
Ví dụ: trong dữ liệu có cột lớp, giờ muốn in ra tên lớp trong dữ liệu
<iif-F>
<Distinct>TenLop</Distinct>
<ItemF>
   <li> <%i=TenHocSinh=i%> </li>
</ItemF>
</iif-F>
* Muốn sắp xếp thêm <Sort>TenLop ASC</Sort>

3. Compute
Tính toán
<Compute>
Biểu thức</>Lọ</>Tên cột tạo
Biểu thức</>Lọc</>Tên cột tạo
</Compute>

Ví dụ: trong dữ liệu có cột lớp, giờ muốn in ra tên lớp trong dữ liệu
<iif-F>
<Source><type:xml/>/App_Data/xml_data/HSL.xml</Source>
<Compute>
SUM(HSL)</></>A
SUM(HSL)</></>B
</Compute>
<ItemF>
   <li> <%i=A=i%> </li>
    <li> <%i=B=i%> </li>
</ItemF>
</iif-F>

4. Hàm iif-GET

* Tính toán giá trị từ DataTable trong vòng for
 <iif-GET>Compute</>SoLuong</>SUM</>{0:n0}</iif-GET>
* Distinct và tính toán
 <iif-GET>Distinct</>PhongBan</>{0}</iif-GET>

 <iif-GET>Distinct</>PhongBan</>{0} - {1}</>SoLuong/-/int</iif-GET>


  5. Xuất Json
Thêm <OutData>json</OutData>
Ví dụ:

<script>
json_hopdong_data = JSON.parse('<iif-F><Source><type:query/>NhaHang/SoDoTiec</>0</Source><OutData>json</OutData></iif-F>');
//alert(hopdong_data.length);
</script>

* Dùng JSON.parse để chuyển string thành biến json (javascript)



 

Ví dụ 1 : ví dụ 1

Mục liên quan: