نمایش نتایج 1 تا 12 از 12

نام تاپیک: فرخوانی یک متد توسط ایجکس

  1. #1

    فرخوانی یک متد توسط ایجکس

    سلام دوستان

    دوستان من یه متد در کنترلرادمین نوشتم که میخان در یک اکشن دیگه توسط ajax اون رو فرخوانی کنم.اما اصلن وارد متدم نمیشه ممنون میشم راهنمایی کنید؟

    این متد من:

           public IEnumerable<Stuff> SelectStuff2()
    {

    var list = db.Stuffs.ToList();

    return list;


    اینم از اکشن selectstuff:

         public ActionResult SelectStuff()
    {
    return View();

    }

    اینم از ویوی selectstuff:
    <table> 
    <tr>
    <td> <h1> Suff List</h1>
    </td> <td> <h1> Selected Stuffs</h1> </td> </tr>
    <tr> <td> <div id="dvleft">
    <ul id="lststuffs">
    </ul> </div> </td> <td> <div id="dvright">
    <ul id="lstselectedstuffs">
    </ul> </div> </td> </tr> </table>
    @section scripts{
    <script type="text/javascript">
    $(document).ready(function () {

    loadStuffs();


    function loadStuffs() {
    var items="";
    $.ajax({
    url: "SelectStuff2",
    type: "GET"
    }).done(function (resp) {
    $.each(resp, function (idx, val) {
    items += "<li draggable='true'>" + val.Name + "</li>";
    });
    $("#lststuffs").html(items);
    setEvents();
    }).error(function (err) {
    alert("Error! " + err.status);
    });
    }
    });
    </script>

    }

  2. #2
    کاربر دائمی آواتار alireza_s_84
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    اهواز
    پست
    1,191

    نقل قول: فرخوانی یک متد توسط ایجکس

    url: "SelectStuff2"
    احتمال خیلی زیاد آدرس دهی اشتباهه، مگر اینکه هنگام تعریف Route ها شما کنترلر پیش فرض رو کنترلی گذاشته باشین که این اکشن متد تو اون تعریف شده. آدرس رو اینجوری بنویسید:
    @Url.Action("SelectStuff2", "نام کنترلر")

  3. #3

    نقل قول: فرخوانی یک متد توسط ایجکس

    ممنون.انجام دادم اما درست نشد

  4. #4

    نقل قول: فرخوانی یک متد توسط ایجکس

    من برنامه رو که تریس میکنم لیستم پر میشه.یعنی ajax راخوانی میشه.ظاهرا مشکل از تابع loadSutff هست که مقادیر رو نشون نمیده.

  5. #5

    نقل قول: فرخوانی یک متد توسط ایجکس

    روی SelectStuff2 یک Breakpoint قرار بدید که مطمئن بشید وارد اکشن میشید ; اگر وارد اکشن نشدید ، url رو در ajax به این شکل تغییر بدید :

    var url = "/Home/SelectStuff2";

  6. #6

    نقل قول: فرخوانی یک متد توسط ایجکس

    بله وارد متد selectstuff2 میشم و دیتاها وارد list میشن.اما چیزی در ویو نشون داده نمیشه.بنظر میاد تابع loadstuff کاری انجام نمیده

  7. #7
    کاربر دائمی آواتار alireza_s_84
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    اهواز
    پست
    1,191

    نقل قول: فرخوانی یک متد توسط ایجکس

    public IEnumerable<Stuff> SelectStuff2() {

    var list = db.Stuffs.ToList();

    return list;
    نتیجه برگشتی از اکشن متد شما ممکنه قابل تبدیل به Json نباشه. در بدنه done کد console.log(resp) رو قرار بدین ببینید از سرور چی برگشت داده میشه.
    همچنین به جای برگشت نوع IEnumerable بهتره نتیحه برگشتی ActionResult باشه و بصورت صریح مقدار json برگشت داده بشه.

  8. #8

    نقل قول: فرخوانی یک متد توسط ایجکس

    اگر alert رو قرار بدم resp رو یه مدل برمیگردونه
    .done(function (resp) {
    alert(resp);



    System.Collections.Generic.List`1[Foods.Models.DomainModels.Stuff]

    ولی تو توابع بعدی هیچ مقداری حتی یه پیغام هم نشون نمیده

  9. #9

    نقل قول: فرخوانی یک متد توسط ایجکس

    من کلا دارم از این اموزش استفاده میکنم.منتها این اموزش بصورت یه Api هست من تابعش کردم.یعنی جایی رو اشتباه کردم؟

    کد HTML:
    http://www.dotnetcurry.com/aspnet-mvc/1039/drag-drop-html5-aspnet-mvc-jquery
    آخرین ویرایش به وسیله sara_t : پنج شنبه 21 اردیبهشت 1396 در 12:59 عصر

  10. #10
    کاربر دائمی آواتار alireza_s_84
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    اهواز
    پست
    1,191

    نقل قول: فرخوانی یک متد توسط ایجکس

    نقل قول نوشته شده توسط sara_t مشاهده تاپیک
    اگر alert رو قرار بدم resp رو یه مدل برمیگردونه
    .done(function (resp) {
    alert(resp);



    System.Collections.Generic.List`1[Foods.Models.DomainModels.Stuff]

    ولی تو توابع بعدی هیچ مقداری حتی یه پیغام هم نشون نمیده
    نتیجه برگشتی شما اینه؟؟؟
    System.Collections.Generic.List`1[Foods.Models.DomainModels.Stuff]

  11. #11

    نقل قول: فرخوانی یک متد توسط ایجکس

    بله تو قسمت alert اینو به من نشون میده.من از اموزش بالا استفاده کردم.منتها اون اموزش یک api ساخته.من اومدم ومتد اون api رو به کنترلر admin اوردم.

  12. #12
    کاربر دائمی آواتار alireza_s_84
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    اهواز
    پست
    1,191

    نقل قول: فرخوانی یک متد توسط ایجکس

    نقل قول نوشته شده توسط sara_t مشاهده تاپیک
    بله تو قسمت alert اینو به من نشون میده.من از اموزش بالا استفاده کردم.منتها اون اموزش یک api ساخته.من اومدم ومتد اون api رو به کنترلر admin اوردم.
    public ActionResult SelectStuff2(){


    var list = db.Stuffs.ToList();
    return Json(list, JsonRequestBehavior.AllowGet);
    }


    نتیجه برگشتی متدهای API بطور خودکار بصورت Json برگشت داده میشه ولی در کنترلرهای معمولی شما باید صراحتا نوع بازگشتی رو مشخص کنید.

تاپیک های مشابه

  1. find کردن یک دکمه توسط متد های گتر و ستر
    نوشته شده توسط Sina.iRoid در بخش Android Studio
    پاسخ: 2
    آخرین پست: دوشنبه 15 دی 1393, 22:30 عصر
  2. فراخوانی یک متد توسط خودش برای محاسبه فاکتوریل یک عدد
    نوشته شده توسط Sina.iRoid در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 3
    آخرین پست: یک شنبه 09 شهریور 1393, 16:31 عصر
  3. سوال: فراخوانی یک متد توسط BackgroundWorker
    نوشته شده توسط erfan_urchin در بخش C#‎‎
    پاسخ: 3
    آخرین پست: سه شنبه 28 خرداد 1392, 15:30 عصر
  4. سوال: چگونگي تكميل نام يك كنترل توسط يك متد و سپس تغيير خاصيت آن
    نوشته شده توسط Programmer 1 در بخش C#‎‎
    پاسخ: 3
    آخرین پست: چهارشنبه 10 شهریور 1389, 21:21 عصر
  5. سوال: فراخواني يك متد از windows serivce توسط windows application
    نوشته شده توسط shaki_phd در بخش C#‎‎
    پاسخ: 4
    آخرین پست: یک شنبه 24 خرداد 1388, 12:57 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •