PDA

View Full Version : درخواست آمورش ajax همراه با مثال



ealvandi
شنبه 09 اسفند 1393, 21:00 عصر
با سلام خدمت دوستان عزیز به ویژه آقای rezakho

اگر کسی از دوستان قبول زحمت کنه و نحوه و اصول بکار گیری ajax تو لاراول رو همراه با یک مثال تو این پست آموزش بده ممنون میشم.

با تشکر

rezakho
شنبه 09 اسفند 1393, 21:35 عصر
فرض کنید چنین کد html ای دارید


<button id="btn">Send Ajax Request</button>

<script>

$('#btn').click(function()
{
$.post('http://localhost/project/public/ajax', {param1:100, param2:'string'}, function(data)
{
alert(data.field1 +' '+ data.field2);
}, 'json');
});

</script>

در کد بالا، با کلیک بر روی دکمه، درخواست ایجکسی با متد post به آدرس مورد نظر که یک برنامه لاراول هست، ارسال میشه، همراه درخواست پارامترهای param1 و param2 هم ارسال میشند، اگر درخواست به صورت صحیح ارسال، پردازش و دریافت بشه، تابع بدون نام(بستار یا کلوژر) اجرا میشه، و خروجی برنامه لاراول هر چی که باشه، داخل متغیر data ریخته میشه، اون رشته json هم مشخص میکنه، که پاسخ برنامه لاراول، از نوع json خواهد بود، بنابراین متغیر data دیگه متن ساده نیست، بلکه به یک شی جاواسکریپت تبدیل میشه، که می تونید با نقطه به فیgدهاش دسترسی داشته باشید، البته بدیهی هست که برنامه لاراول باید خروجی json صحیحی رو برای این درخواست ajax بفرسته که در ادامه می بینید
و چنین روتی در لاراول


Route::post('ajax', function()
{
$param1 = Input::get('param1');
$param2 = Input::get('param2');

...

return ['field1' => 54545, 'field2' => 'some string'];
});

در این کد هم که یک روت لاراول هست و البته می تونه درخواست با کنترلر هم ارسال بشه، داده های ارسالی ajax دریافت شده، و در قسمت سه نقطه مثلا عملیات رو داده ها انجام میشه، و در نهایت، پاسخ به صورت آرایه برگشت داده میشه، لاراول به صورت خودکار، پاسخ های ارایه ای رو به json تبدیل میکنه