Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
English |
---|
To ensure that Form Grid data do not have duplicates |
Thai |
---|
เพื่อให้แน่ใจว่าข้อมูลกริดฟอร์มไม่มีข้อมูลซ้ำซ้อน |
Change "gridId" to your form grid "Field Id".
To compare certain columns only instead of all columns, modify '$(row).find(".grid-cell")' to '$(row).find("[KB:column_key=field1], [KB:column_key=field2]")'. (Take note that this is separated by a comma.)
Thai |
---|
เปลี่ยน "gridId" เป็นตารางแบบฟอร์ม "Field Id" ของคุณ หากต้องการเปรียบเทียบคอลัมน์บางคอลัมน์แทนที่จะเป็นคอลัมน์ทั้งหมดให้แก้ไข '$ (แถว) .find (". grid-cell")' เป็น '$ (แถว) .find ("[KB: column_key = field1], [KB: column_key = field2] ")' (โปรดทราบว่าสิ่งนี้คั่นด้วยเครื่องหมายจุลภาค) |
Code Block |
---|
<script> $(document).ready(function(){ var formGridFieldId = "gridId"; //run when form grid value change $("[name="+formGridFieldId+"]").live("change", function(){ var table = $(this).find("table"); //get last added row var addedRow = $(table).find("tr.grid-row:last-child"); var duplicate = false; //Loop all the row and compare all the field $(table).find("tr.grid-row").each(function(){ var row = $(this); if ($(row).attr("id") != $(addedRow).attr("id")) { var similar = true; //Loop all field //Change '$(row).find(".grid-cell")' to '$(row).find("[column_key=field1], [column_key=field2]")' //if only want to compare to certain fields. Separate with comma. $(row).find(".grid-cell").each(function(){ var field = $(this); var columnKey = $(field).attr("column_key"); var value = $(field).text(); var newValue = $(addedRow).find("[column_key="+columnKey+"]").text(); if (value != newValue) { similar = false; return false; } }); if (similar) { duplicate = true; return false; } } }); //if record is duplicate, remove it if (duplicate) { $(addedRow).remove(); } }); }); </script> |