<!-- فیلترها -->
<label for="filterAxis">محور:</label>
<select id="filterAxis" onchange="filterTable()">
<option value="">همه</option>
<option value="محور 1">محور 1</option>
<option value="محور 2">محور 2</option>
<option value="محور 3">محور 3</option>
</select>
<label for="filterSubAxis">زیر محور:</label>
<select id="filterSubAxis" onchange="filterTable()">
<option value="">همه</option>
<option value="زیر محور 1">زیر محور 1</option>
<option value="زیر محور 2">زیر محور 2</option>
<option value="زیر محور 3">زیر محور 3</option>
</select>
<!-- جدول -->
<table id="myTable" border="1" cellpadding="5" cellspacing="0" style="border-collapse: collapse; width: 100%; margin-top: 10px;">
<thead style="background-color: #f2f2f2;">
<tr>
<th>محور</th>
<th>زیر محور</th>
<th>عنوان سند</th>
<th>نوع سند</th>
<th>تاریخ آخرین بازنگری</th>
<th>تاریخ ویرایش</th>
<th>کد ویرایش</th>
</tr>
</thead>
<tbody>
<tr>
<td>محور 1</td>
<td>زیر محور 1</td>
<td>مثال عنوان 1</td>
<td>Word</td>
<td>2025-11-29</td>
<td>2025-11-28</td>
<td>001</td>
</tr>
<tr>
<td>محور 2</td>
<td>زیر محور 2</td>
<td>مثال عنوان 2</td>
<td>PDF</td>
<td>2025-11-28</td>
<td>2025-11-27</td>
<td>002</td>
</tr>
<tr>
<td>محور 3</td>
<td>زیر محور 3</td>
<td>مثال عنوان 3</td>
<td>Excel</td>
<td>2025-11-27</td>
<td>2025-11-26</td>
<td>003</td>
</tr>
<tr>
<td>محور 1</td>
<td>زیر محور 2</td>
<td>مثال عنوان 4</td>
<td>Word</td>
<td>2025-11-26</td>
<td>2025-11-25</td>
<td>004</td>
</tr>
</tbody>
</table>
<!-- اسکریپت فیلتر پویا -->
<script>
// پر کردن Dropdownها بر اساس مقادیر جدول
function filterTablepopulateFilters() {
var table = document.getElementById("myTable");
var axisSet = new Set();
var axis subAxisSet = new Set();
var tr = table.getElementsByTagName("tr");
for (var i = 1; i < tr.length; i++) {
var tds = tr[i].getElementsByTagName("td");
axisSet.add(tds[0].textContent);
subAxisSet.add(tds[1].textContent);
}
var axisSelect = document.getElementById("filterAxis");
axisSet.forEach(function(value.toLowerCase();){
var option = document.createElement("option");
option.value = value;
option.text = value;
axisSelect.appendChild(option);
});
var subAxissubAxisSelect = document.getElementById("filterSubAxis");
subAxisSet.forEach(function(value.toLowerCase()){
var option = document.createElement("option");
option.value = value;
option.text = value;
subAxisSelect.appendChild(option);
});
}
// فیلتر کردن جدول
function filterTable() {
var axis = document.getElementById("filterAxis").value;
var subAxis = document.getElementById("filterSubAxis").value;
var table = document.getElementById("myTable");
var tr = table.getElementsByTagName("tr");
for (var i = 1; i < tr.length; i++) {
var tds = tr[i].getElementsByTagName("td");
var axisText = tds[0].textContent;
var subAxisText = tds[1].textContent;
if ((axis === "" || axisText === axis) && (subAxis === "" || subAxisText === subAxis)) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}
}
// اجرا هنگام بارگذاری صفحه
populateFilters();
</script> |