دسته بندی ها
11:56 1400/03/25
نمایش دسترسی های یک گروه با استفاده از jstree
من پروژه ام رو با asp.net core 3.1 نوشتم و میخوام دسترسی یک گروه رو با استفاده از js tree نمایش بدم و بعد از آن بتونم اون دسترسی ها رو کم یا زیاد کنم ..... الان اتفاقی که می افته اینه که دسترسی ها به صورت درختی نمایش داده میشه ولی نشون نمیده که گروه فراخوانی شده چه دسترسی داره ؟ هیچ خطایی هم اینجا ندارم که متوجه شم مشکل چیه .... tree view نمایش داده می شه بدون نمایش دسترسی قبلی
کدهای سمت کنترلر :
private void FillTreeView()
{
List<TreeViewModel> node = new List<TreeViewModel>();
node.Add(new TreeViewModel
{
id = "1",
text = "مدیریت دسترسی گروه",
parent = "#"
});
foreach (UserKey keys in _context.UserKeys.Where(kd => kd.ParentID.ToString() != "0"))
{
node.Add(new TreeViewModel
{
id = keys.KeyId.ToString(),
parent = keys.ParentID.ToString(),
text = keys.KeyDesc.ToString()
});
}
ViewBag.SystemPart = JsonConvert.SerializeObject(node);
}
[HttpGet]
public IActionResult AddKeyToGroup(int GroupId, string GroupDesc)
{
FillTreeView();
ViewBag.GroupId = GroupId;
ViewBag.GroupDesc = GroupDesc;
ViewBag.groupRole = GetKeyId(GroupId);
return View();
}
public string GetKeyId(int GroupId)
{
var getKey = _context.UserGroupKeys.Where(gk => gk.GroupId == GroupId).ToList();
string getGroupIdString = "";
for (int i = 0; i < getKey.Count; i++)
{
getGroupIdString += getKey[i].KeyId.ToString() + getGroupIdString;
}
return getGroupIdString;
}
کدهای سمت Razor
<div class="panel panel-body container-fluid" style="border-radius:2px; box-shadow:0px 1px 3px 0px rgba(0,0,0,0.12);
display:grid; padding: 3em; background-color:#fff;">
<form asp-controller="UserGroupKeys" asp-action="AddKeyToGroup" method="post">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div id="jstreesyspart">
</div>
<div class="col-xs-12 form-group" style="margin-top:15px;">
<input type="submit" style="border:1px solid gray; border-radius:3px;" class="btn pull-right" value="ثبت دسترسی" />
</div>
</form>
</div>
@if (ViewBag.groupRole != null)
{
<input id="rolelist" type="hidden" value="@ViewBag.groupRole" />
}
<input name="SelectedItems" id="SelectedItems" type="hidden" />
<input name="GroupId" id="GroupId" type="hidden" value="@ViewBag.GroupId" />
<div class="col-xs-12 form-group" style="margin-top:15px;">
</div>
</div>
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
<script>
$(function () {
$("#jstreesyspart").on("changed.jstree", function (e, data) {
var i, j;
var postedItems = [];
j = data.selected.length;
for (var i = 0; i < j; i++) {
postedItems.push({
text: data.instance.get_node(data.selected[i]).text,
id: data.selected[i],
parent: data.node.parents[0]
});
$("#SelectedItems").val(JSON.stringify(postedItems));
}
}).jstree({
"core": {
"themes": {
"variant":"large"
},
"data": @Html.Raw(ViewBag.SystemPart) ,
},
"checkbox": {
"visable": true,
"Keep_selected_style":false
},
"plugins": ["checkbox"]
//checkbox: { three_state: false, cascade:"" }
}).on("loaded.jstree", function () {
$.jstree.reference('#jstreesyspart').open_all();
var urole = $("#rolelist").val().split(",");
$("#jstreesyspart").jstree(true).select_node(urole);
});
});
</script>
مشخصات سوال کننده :
کاربر : yasasemani
امتیاز کاربر : 6
رتبه کاربر : 80
به این سوال امتیاز بدهید
0
تعداد بازدید این سوال : 2383
1 نظر
fateme :
توضیحاتتون رو خوب نوشتید اما کدهایی که قرار دادید خیلی زیاده. سخته بررسی این همه کد. کاش میشد خلاصه تر و مفید تر کد میذاشتید که بررسی ساده باشه.
امتیاز کاربر : 1617
رتبه کاربر : 2
تاریخ ثبت : 04:32 1400/03/27
آخرین سوالات ثبت شده
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
سوالات مرتبط
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.
 
ورود