سلام
یه آرایه تعریف کردم:
var p = []
اعدادی که تووش Push کردم:
5001 6002 9001
اندازه اطلاعات ذخیره شده رو 12 تا کاراکتر بهم میده موقع alert گرفتن.
موقعی که سلکتور حلقه For رو میندازم تووی اون؛ دونه دونه تحویلم میده که میشه 12 تا.
مشکل کجاست؟
البته قبل فرستادنش به کوکی مشکل ندارم.
وقتی میفرستمش تووی کوکی و بعد میگیرمش اینطوری میشه.
چگونه اندازه گیری میکنید، کد های بیشتری رو قرار بدید.
ممنونم
مشکل این بود که آرایه یا هر داده ای وقتی وارد کوکی میشه (تبدیل به رشته میشه).
یعنی اگر در آرایه "500" رو دشته باشم؛ بعد از ذخیره و بازیابی از کوکی به صورت '0' ' 0' '5' فرمت تغییر میکنه.
لازم بود از JSON استفاده کنم:
JSON.Parse
موقع خروج داده از کوکی و دو دستور مخصوص jquerycookie :
$.cookie.json = true;
$.cookie.raw = true;
که مخصوصی آرایه هست و فرمت آرایه رو نگه میداره موقع ذخیره و بازیابی از کوکی.
لطفا کل کد قرار بدید تا بررسی کنم.
<script type="text/javascript"> دو قسمتی که لازم بود باشه $.cookie.json = true; $.cookie.raw = true; تعریف آرایه var Arrey_Pnumber = []; var Arrey_Name = []; ثبت در کوکی $.cookie('Arrey_Pnumber', Arrey_Pnumber); $.cookie('Arrey_Name', Arrey_Name); دریافت از کوکی Arrey_Pnumber = $.parseJSON($.cookie('Arrey_Pnumber')); Arrey_Name = $.parseJSON($.cookie('Arrey_Name')); برای انجام کاهایی که میخوام انجام بده var arr_p = Arrey_Pnumber; var arr_L = Arrey_Pnumber; for (i in arr_p) { $("#p2" + arr_p[i] + "").trigger("click"); } for (j in arr_L) { $("#p1" + arr_L[j] + "").trigger("click"); } برای ثبت داده function Ajax_Pnumber_Name(pnumber, name) { Arrey_Pnumber = []; Arrey_Name = []; $('input.CheckBox:checked').each(function () { Arrey_Pnumber.push($(this).attr("data-Pnumber")); Arrey_Name.push($(this).attr("data-Name")); }); }
- به جز 4 خط ابتدایی که مربوط به تعریف و نگه داشتن ساختار کلی هست الباقی فانکشناله.
- $.parseJSON هم همون JSON.Parse هست. چون برای خود پلاگین بود همون رو قرار دادم.
کدتون را اجار کردن درست کوکی ست میشه. مطمعن شید data-Pnumber درست تنظیم میشه.
و سوالم اینه که کوکی در سرور به اشتباه نمایش داده میشه ؟
شما میتونید مقدار کوکی را در تب Application مروگر کروم مشاهده کنید.
این کدا الان درست شدشه
مشکلش برطرف شدست
دور قبلی:
اون دوتا خط اول رو نگذاشتم.
به اضافه ی JSON.Parse رو.
واسه همین موقع بازگردوندن کوکی اونارو دیگه به فرمت آرایه در نظر نمیگرفت و 1 پارامتر از نوع String رو تحویلم میداد.
در صورتی که 3 پارامتر رو Push کردم.
تووی Stack خوندم که داده ها وقتی وارد Cookie میشه تبدیل به استرینگ میشه. حالا هر فرمتی و یا نوعی که می خواد داشته باشه.
برای حفظ فرمت اون لازم بود که از JSON استفاده بشه.
البته اون دوتا خط اول مخصوص خود پلاگین کوکیه.
اگر که از اون استفاده نمیکردم بایستی برای ذخیره در کوکی از Json.stringify استفاده میکردم برای Array .
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)