سلام
کنترلر
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 تا رو میچسبونه به هم میده به پارامتر اول و دومی خالیه
وقتی کاما هم میزارم باز دومی خالیه
ممنون میشم راهنماییم بفرمایید
سلام
چند راه متفاوت وجود داره!
اولی اینکه از rout استفاده کنی مثلا
[Route(/Controller/Action/id/we)]
راه دوم اینه که اصلا متدت راPost کنی و بعد یک json بهش پاس بدی!
خود json را هم داخل ajax می تونی بسازی
<script> function Cancel(id,we) { $.get("/Sale/Cancel/" + id+"?we=", we, function () { $('#myModal').modal('hide'); $('body').removeClass('modal-open'); $('.modal-backdrop').remove(); }); } </script>
متاسفانه باز هم پارامتر دوم رو null میفرسته به کنترلر!!!
پارامتر اول رو اوکیه اما دومی خالیه !
به شکل زیر تست کنید اگر دریالفت کرد یعنی مشکل در فراخوانی تایع هست
<script> function Cancel(id,we) { $.get("/Sale/Cancel/" + id+"?we=Salam", function () { $('#myModal').modal('hide'); $('body').removeClass('modal-open'); $('.modal-backdrop').remove(); }); } </script>
باز هم null هست
جالبه که توی کنترلر و کد ajax پارامتر ها رو جابجا میکنم این اتفاق برای دومی که id هست میافته و اولی ارسال میشه !
آها یه نکته دیگه توی دکمه شاید دارم اشتباه 2 تا پارامتر رو پاس میدم !
<a class="btn btn-warning pull-left" onclick="Cancel(@a.Id,@a.Qty)">
<script> function Cancel(id,we) { $.get("/Sale/Cancel/" + id+"?we=123", function () { $('#myModal').modal('hide'); $('body').removeClass('modal-open'); $('.modal-backdrop').remove(); }); } </script>
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)