دوستان برای نمایش اطلاعات به صورت سلسله مراتبی و درختی از پلاگین JsTree استفاده کردم. و اطلاعات رو به صورت زیر نمایش دادم :
<script>
$(function () {
$("#jstreeteacher").on("changed.jstree", function (e, data) {
}).jstree({
"core": {
"themes": {
"variant":"large"
},
"data": @Html.Raw(ViewBag.teacherJson) ,
},
"checkbox": {
"Keep_selected_style":false
},
"plugins": ["checkbox"],
checkbox: { three_state: false, cascade: "" }
}).on("loaded.jstree", function () {
$.jstree.reference('#jstreeteacher').open_all();
});
});
</script>
حالا میخوام بعضی از نودها رو غیرفعال کنم تا کاربر نتونه انتخاب کنه. لطفا راهنمایی کنید چه کدی برای این کار باید بنویسم.
برای غیرفعال کردن نودهای درخت در پلاگین JsTree در ابتدا باید لیستی از نودهایی که میخواید فعال باشن رو ایجاد کنید. این لیست رو از بخش کنترلر توسط ViewBag به View ارسال کنید :
ViewBag.ypurlist = JsonConvert.SerializeObject(Query.Select(t => t.ID).ToList());
خب حالا این لیست رو باید توسط جی کوئری دریافت کنید :
var idlist = [];
idlist = '@ViewBag.yourlist';
حالا توسط متد disable_node میتونید لیستی از نودهای فعال رو مشخص کنید و بقیه غیر فعال:
<script>
$(function () {
$("#jstreeteacher").on("changed.jstree", function (e, data) {
}).jstree({
"core": {
"themes": {
"variant":"large"
},
"data": @Html.Raw(ViewBag.teacherJson) ,
},
"checkbox": {
"Keep_selected_style":false
},
"plugins": ["checkbox"],
checkbox: { three_state: false, cascade: "" }
}).on("loaded.jstree", function () {
$.jstree.reference('#jstreeteacher').open_all();
var idlist = [];
idlist = '@ViewBag.yourlist';
for (var i = 0; i < idlist.length; i++) {
$.jstree.reference('#jstreeteacher').disable_node(idlist[i]);
}
});
});
</script>
خروجی مشابه با تصویر زیر خواهد بود :
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
214
- پاسخ :
1
|
تاریخ :
1403/05/20
- ساعت :
09:18:00 PM
- بازدید :
446
- پاسخ :
0
|
تاریخ :
1402/01/26
- ساعت :
03:38:00 PM
- بازدید :
1244
- پاسخ :
1
|
تاریخ :
1402/11/13
- ساعت :
12:48:00 AM
- بازدید :
879
- پاسخ :
4
|
تاریخ :
1402/08/06
- ساعت :
01:20:00 PM
- بازدید :
716
- پاسخ :
1
|
تاریخ :
1398/08/21
- ساعت :
03:53:00 PM
- بازدید :
3064
- پاسخ :
1
|
تاریخ :
1398/08/18
- ساعت :
12:16:00 PM
- بازدید :
2799
- پاسخ :
2
|
تاریخ :
1399/10/20
- ساعت :
01:57:00 PM
- بازدید :
5003
- پاسخ :
1
|
تاریخ :
1399/07/25
- ساعت :
02:58:00 AM
- بازدید :
8542
- پاسخ :
1
|
تاریخ :
1401/02/24
- ساعت :
02:17:00 PM
- بازدید :
2008
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
75
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
109
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1033
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
428
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
930
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1356
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4797
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1160
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
597
- پاسخ :
1
|