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

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

کاربر سایت

sadeghpa80

عضویت از 1392/09/18

راهنمایی برای ارسال 2 پارامتر با استفاده از ajax به کنترلر

  • چهارشنبه 20 تیر 1397
  • 15:26
تشکر میکنم

سلام

کنترلر

        public void Cancel(int? id,int? we)
        {
            _Repository.Cancel(id,we);
            UpdateAll.Refresh();
        }

و این هم کد ajax

<script>
    function Cancel(id,we) {
        $.get("/Sale/Cancel/" + id, we,
            function () {
                $('#myModal').modal('hide');
                $('body').removeClass('modal-open');
                $('.modal-backdrop').remove();
            });
    }
</script>

هر کاری میکنم نمیشه هر 2 تا رو پاس بده

حتی توی اسکریپت بین پارامتر ها + میزارم میاد به هر 2 تا رو میچسبونه به هم میده به پارامتر اول و دومی خالیه

وقتی کاما هم میزارم باز دومی خالیه

ممنون میشم راهنماییم بفرمایید

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

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

AmirGhasemi

عضویت از 1392/02/25

  • چهارشنبه 20 تیر 1397
  • 15:33

سلام

چند راه متفاوت وجود داره!

اولی اینکه از rout استفاده کنی مثلا

[Route(/Controller/Action/id/we)]

راه دوم اینه که اصلا متدت راPost کنی و بعد یک json  بهش پاس بدی! 

خود  json را هم داخل ajax   می تونی بسازی

کاربر سایت

ایمان مدائنی

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

  • چهارشنبه 20 تیر 1397
  • 16:05
<script>
    function Cancel(id,we) {
        $.get("/Sale/Cancel/" + id+"?we=", we,
            function () {
                $('#myModal').modal('hide');
                $('body').removeClass('modal-open');
                $('.modal-backdrop').remove();
            });
    }
</script>

کاربر سایت

sadeghpa80

عضویت از 1392/09/18

  • چهارشنبه 20 تیر 1397
  • 17:28

متاسفانه باز هم پارامتر دوم رو null میفرسته به کنترلر!!!

پارامتر اول رو اوکیه اما دومی خالیه !

کاربر سایت

ایمان مدائنی

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

  • چهارشنبه 20 تیر 1397
  • 17:35

به شکل زیر تست کنید اگر دریالفت کرد یعنی مشکل در فراخوانی تایع هست 

<script>
    function Cancel(id,we) {
        $.get("/Sale/Cancel/" + id+"?we=Salam",
            function () {
                $('#myModal').modal('hide');
                $('body').removeClass('modal-open');
                $('.modal-backdrop').remove();
            });
    }
</script>

کاربر سایت

sadeghpa80

عضویت از 1392/09/18

  • چهارشنبه 20 تیر 1397
  • 17:40

باز هم null هست

جالبه که توی کنترلر و کد ajax پارامتر ها رو جابجا میکنم این اتفاق برای دومی که id هست میافته و اولی ارسال میشه !

کاربر سایت

sadeghpa80

عضویت از 1392/09/18

  • چهارشنبه 20 تیر 1397
  • 17:41

آها یه نکته دیگه توی دکمه شاید دارم اشتباه 2 تا پارامتر رو پاس میدم !

            <a class="btn btn-warning pull-left" onclick="Cancel(@a.Id,@a.Qty)">

کاربر سایت

ایمان مدائنی

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

  • چهارشنبه 20 تیر 1397
  • 17:49
<script>
    function Cancel(id,we) {
        $.get("/Sale/Cancel/" + id+"?we=123",
            function () {
                $('#myModal').modal('hide');
                $('body').removeClass('modal-open');
                $('.modal-backdrop').remove();
            });
    }
</script>

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

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

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

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