مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

اضافه کردن سطر به Kendo UI Grid

  • چهارشنبه 9 دی 1394
  • 14:30
تشکر میکنم

با عرض سلام

دوستان من یک گرید کندو دارم که اعمال edit, delete را به خوبی انجام میده اما برای اضافه کردن ، سطر را اضافه میکنه اما در گرید نمایش نمیده، حتما باید رفرش کنی تا داده به گرید اضافه میشه

اگه میشه بگید چطوری اتوماتیک اون گرید رفرش بشه و دوره داده هارو رید کنه؟؟

اگه لازمه هم بگید تا کد هامو واستون بذارم تا بهتر متوجه بشید

با تشکر از سایت خوبتون

پاسخ های این پرسش

تعداد پاسخ ها : 9 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 9 دی 1394
  • 14:33

با Ajax کار کردید ؟

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

  • چهارشنبه 9 دی 1394
  • 14:41

نه ،با دستورات معمل کندو ، فکر میکنم خود کندو با AJAX کار میکنه 

اما من به طور مستقیم نه ، اصلا در این پروژه با ایجکس کار نکردم ، چطور؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 9 دی 1394
  • 14:51

شما میتونیدGrid را در یک partialView پیاده سازی کنید و پس از ثبت از طریق Ajax این پارشیال را فراخوانی کنید و در صفحه نمایش بدید

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

  • چهارشنبه 9 دی 1394
  • 14:55

با تشکر از جوابتون

ببخشید  partialView چیه؟

وب فرم هم  partialView داره؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 9 دی 1394
  • 15:02

عذر خواهی میکنم فکر کردم MVC کار میکنید

میتونید userControl بسازید به جای Partial

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

  • چهارشنبه 9 دی 1394
  • 15:17

آقای مدائنی لطفا یخورده سطح پایین تر بگید

partial چیه؟

واسه چی یوزر کنترل بسازم ؟

 

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

  • چهارشنبه 9 دی 1394
  • 15:19
   این کد منه

 $(document).ready(function () {
       
        $("#ggg").kendoGrid({
            dataSource:({

                transport: {
                    destroy: {
                        url: function (Major) {

                            return "api/Major/" + "DeleteMajor/" + Major.MajorId;
                        },
                        //  url: "api/Major/" + "DeleteMajor",
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        type: "DELETE"
                    },
                    read: {
                        url: "api/Major/" + "GetMajor",
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        type: "GET"
                    },
                    update: {
                        url: function (Major) {

                            return "api/Major/" + "EditMajor/" + Major.MajorId;
                        },
                        //"api/Major/" + "EditMajor/",
                        dataType: "json",
                        contentType: 'application/json; charset=utf-8',
                        type: "PUT",

                        save: function () {
                            this.refresh();
                            this.read();
                            kendo.DataSource.read();
                        }

                    },

                    create: {
                        url: "api/Major/" + "CreateMajor/",
                        dataType: "json",
                        contentType: 'application/json; charset=utf-8',
                        type: "POST",
                        save: function () {
                            this.refresh();
                            this.read();
                            kendo.DataSource.read();
                        }

                    },
                    parameterMap: function (options) {
                        return kendo.stringify(options);
                    }
                },
                save: function () {
                    this.refresh();
                    this.read();
                    kendo.DataSource.read();
                },
                error: function (e) {
                    document.getElementById("demo").innerHTML = e.errorThrown.stack;
                },
                schema: {
                    model: {
                        id: "MajorId",
                        fields: {
                            MajorId: { editable: false, type: "number" },
                            name: { validation: { required: true }, type: "string" },
                            Description: { type: "string" }
                        }
                    }
                },
                batch: false,
                pageSize: 10,
                sort: { field: "MajorId", dir: "desc" }

            }),
        //---------------------end data sourde




            height: 550,
            autoBind: true,
            scrollable: false,
            pageable: true,
            sortable: true,
            pageSize: 10,
            filterable: true,
            reorderable: true,
            columnMenu: true,


            toolbar: [{ name: "create", text: "ایجاد رشته جدید" }],
            columns: [
                { field: "MajorId", title: "کد رشته", width: "100px" },
                { field: "Name", title: "نام رشته", format: "{0:c}", width: "140px", validation: { required: true } },
                { field: "Description", title: "توضیحات", width: "420px" },
                { command: [{ name: "edit", text: "ویرایش" }, { name: "destroy", text: "حذف" }], title: " ", width: "250px" }
            ],
            editable: {
                confirmation: "آیا مایل به حذف ردیف انتخابی هستید؟",
                destroy: true, // whether or not to delete item when button is clicked
                mode: "popup", // options are "incell", "inline", and "popup"
                //template: kendo.template($("#popupEditorTemplate").html()), // template to use for pop-up editing
                update: true, // switch item to edit mode when clicked?
                create: true,
                window: {
                    title: "مشخصات محصول" // Localization for Edit in the popup window
                }
            },
            messages: {
                editable: {
                    cancelDelete: "لغو",
                    confirmation: "آیا مایل به حذف این رکورد هستید؟",
                    confirmDelete: "حذف"
                },
                commands: {
                    create: "ایجاد رشته جدید",
                    cancel: "لغو کلیه‌ی تغییرات",
                    save: "ذخیره‌ی تمامی تغییرات",
                    destroy: "حذف",
                    edit: "ویرایش",
                    update: "ثبت",
                    canceledit: "لغو"
                }
            }



        }).data("kendoGrid");

 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 9 دی 1394
  • 16:20

Partial همان UserControl در MVC هست

بله میتونید UserControl ایجاد کنید و گرید را داخل اون قرار دهید و پس از ثبت این UserControl را مجدد بارگذاری کنید

کاربر سایت

hasan_adelian

عضویت از 1394/08/13

  • چهارشنبه 9 دی 1394
  • 20:56

ممنون آقا ایمان، تنکس

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)