don_inter
5 سال پیش توسط don_inter مطرح شد
7 پاسخ

ارسال فرم

سلام
من یه فرمی دارم که درونش یه دکمه ای هست که این دکمه وظیفه اش اینکه تابعی که توسط php نوشته شده رو صدا بزنه.
منتها نمیخوام از طریق php این دکمه رو فراخونی کنم بلکه میخوام از طریقjavascript jquery صدا زده بشه.
چون نمیخوام دکمه وظیفه ارسال فرم رو داشته باشه برای اینکه همراه فرم من اطلاعات دیگه ای هم هست میخوام فقط دکمه تابع رو صدا بزنه و همین.
میشه لطفا من رو راهنمایی بفرمایید. ممنون


ثبت پرسش جدید
الیاس سخاوتی نیا
تخصص : علاقه‌مند به برنامه‌‎نویسی
@elyassir 5 سال پیش مطرح شد
0

فکر کنم باید اون دکمه رو توسط جاوااسکریپت انتخاب کنید و بعدش توی رویداد کلیکش درخواست ajax بفرستید به اون آدرس php که تابع تون هست!


don_inter
تخصص : web developer
@intersubjektiv 5 سال پیش مطرح شد
0

@elyasbeshkani
در ajax جای data رو چی بگذارم ؟


الیاس سخاوتی نیا
تخصص : علاقه‌مند به برنامه‌‎نویسی
@elyassir 5 سال پیش آپدیت شد
1

@intersubjektiv
من با ajax آشنا نیستم
ولی خب فکر کنم مثلا اگه با متد POST دارین درخواست میدین همون داده هایی که میخواین به تابع بفرستین رو باید بهش پاس بدین

var myKeyVals = { A1984 : 1, A9873 : 5, A1674 : 2, A8724 : 1, A3574 : 3, A1165 : 5 }

var saveData = $.ajax({
      type: 'POST',
      url: "someaction.do?action=saveData",
      data: myKeyVals,
      dataType: "text",
      success: function(resultData) { alert("Save Complete") }
});
saveData.error(function() { alert("Something went wrong"); });

don_inter
تخصص : web developer
@intersubjektiv 5 سال پیش مطرح شد
1

@elyasbeshkani
متاسفانه منم درست درمون باهاش کار نکردم که بدونم دقیقا ساختارش به چه نحو هستش
اما در کل ممنونم ازت برای راهنمایی


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 5 سال پیش مطرح شد
1

همانطور که آقای @elyasbeshkani گفتن شما با جی کوئری فرمت رو انتخاب میکنی و preventDefault برای دکمه ات میذاری که رویدادی براش رخ نداده و با جی کوئری فرمت رو بصورت ایجکس میفرستی به url مورد نظرت داده ها رو بصورت جیسون میگیری و ...

$(document).ready(function() {
    $("#Form").on('submit', (function(e) {
        e.preventDefault();
        $.ajax({
            type: 'post',
            url: '/tikets/add',
            data: new FormData(this),
            beforeSend: function() {

            },
            success: function(data) {

            },
            error: function(error) {

            }
        });

 }));

don_inter
تخصص : web developer
@intersubjektiv 5 سال پیش مطرح شد
0

@juza66
در url اگر تابع من در همون آدرس باشه یعنی آدرس صفحه جاری مشکلی نداره ؟ و دیتا رو چی باید بگذارم ؟
من میخوام یه توکن به من بده وقتی دکمه رو میزنم تابعی که با php نوشتم در اصل توکن و میسازه که میخوام اینطوری اون تابع رو صدا بزنم که بسازه ولی فرم و برام ارسال کنه که متوجه شدم براش چیکار کنم.
الان فقط url , data واسم سواله


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 5 سال پیش مطرح شد
1

شما به فرض یک مسیر داری این شکلی

http://127.0.0.1:8000/add-order

که با ارسال فرمت بصورت post یکسری داده برات برمیگردونه (JSON) خب تا اینجا اوکیه؟!
اون دیتا هم که شما میگی => وقتی فرمی رو با جی کوئری $("#Form") انتخاب میکنی میتونی از اون فرم یک شی بسازی و استفاده کنی new FormData(this) و این کد داره به اون فرم اشاره میکنه هرچیزی که اونجا داشته باشی الان انتخاب شده است و سمت url ارسال میشه


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام