الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة عند نقل بيانات بين الصفحات عن طريق Query String تظهور الكتابة العربية فى الانترنت اكسبلورر على شكل مربعات؟

بدأه khsnas في 25 سبتمبر 2013 · 4 رد · 1,074 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخوانى الكرام

السلام عليكم

اقوم بنقل قيمة وهى اسما باللغة العربية بين صفحتين عن طريق الQuery String  فتظهر  فى الصفحة الثانية او الصفحة المستقبلة للقيمة عبارة عن مربعات ولا تظهر الحروف العربية وهذا فى متصفح الانترنت اكسبلورر فقط؟؟ 

تتم ال Query String فى لينك داخل GridView كالاتى :

<asp:TemplateField>
                     <ItemTemplate>
                           <asp:HyperLink NavigateUrl='<%#"~/Admin/K_F_City/Follow/TagsDetail.aspx?ItemName="+Eval("ItemNameAR")%>' Text='<%#Bind("ItemNameAR")%>'
                     ID="HyperLink14" runat="server" Target="_blank" onmouseover="this.style.color='#FFF666'" 
                     onmouseout="this.style.color='#0066FF'"  ForeColor="#0066FF" Font-Underline="False"></asp:HyperLink>
                   </ItemTemplate>
               </asp:TemplateField>

وفى الصفحة المستقبلة استقبل القيمة بهذا الكود

Label6.Text = Request.QueryString["ItemName"];

مع العلم ان المشكلة تحدث فى الانترنت اكسبلورر فقط

ارجو المساعدة

تم تعديل هذه المشاركة بواسطة khsnas في 26 سبتمبر 2013 في 08:15

#4

يمكنك استخدام HttpUtility.UrlEncode method عند انشاء ال Query String  و استخدام HttpUtility.UrlDecode Method عند استرجاع القيمة

 

كالتالي

NavigateUrl='<%#"~/Admin/K_F_City/Follow/TagsDetail.aspx?ItemName="+ HttpUtility.UrlEncode( Eval("ItemNameAR") ) %>'
Label6.Text = HttpUtility.UrlDecode( Request.QueryString["ItemName"] );
1
#5
AhmedElbaz كتب:

 

يمكنك استخدام HttpUtility.UrlEncode method عند انشاء ال Query String  و استخدام HttpUtility.UrlDecode Method عند استرجاع القيمة

 

كالتالي

NavigateUrl='<%#"~/Admin/K_F_City/Follow/TagsDetail.aspx?ItemName="+ HttpUtility.UrlEncode( Eval("ItemNameAR") ) %>'
Label6.Text = HttpUtility.UrlDecode( Request.QueryString["ItemName"] );

شكرا اخى الكريم ... مشاركتك اوصلتنى فعلا للحل

طبقتها كما اوردتها ظهر خطأ

CS1502: The best overloaded method match for 'System.Web.HttpUtility.UrlEncode(string)' has some invalid arguments

وبالبحث وجدت انه يبدو ان يفضل التعامل مع القيمة باستخدام String Format function. ليصبح الحل كالاتى

<asp:HyperLink NavigateUrl='<%#string.Format("~/Admin/K_F_City/FollowUpStore/TagsDetail.aspx?ItemName="+HttpUtility.UrlEncode(Eval("ItemNameAR").ToString()))%>'

شكرا لك اخى الكريم

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…