خاموش نمودن خاصیت AutoComplete کنترل های متنی در مرورگرها
  در این ترفند به معرفی نحوه ی خاموش نمودن خاصیت AutoComplete کنترل های متنی (TextBox) در مرورگرها می پردازم
   ASP.NET
   ۸۶۱۶
   این مقاله حاوی فایل ضمیمه نمی باشد
   مرتضی صحراگرد
   ۱۳۸۹/۸/۲۱
ارسال لینک صفحه برای دوستان ارسال لینک صفحه برای دوستان  اضافه کردن به علاقه مندیها اضافه کردن به علاقه مندیها   نسخه قابل چاپ نسخه قابل چاپ

 

مقدمه:

برخی نکات پیش پا افتاده و در عین حال مهم وجود دارند که متاسفانه مشاهده می شود که هنگام طراحی و برنامه نویسی مورد فراموشی قرار می گیرند. چند روز پیش در فاروم های سایت Paypal در حال پیمایش بودم که متوجه شدم این مسئله منحصر به برنامه نویسان ایرانی نیست بنابراین جالب دانستم در قالب یک ترفند به معرفی این مشکل بپردازم.

در برنامه های تحت وب گاهی نیاز می باشد که اطلاعات حساسی را از طریق کنترل های TextBoxاز کاربر دریافت نماییم. این اطلاعات لزوما شامل رمز عبور نیستند و اطلاعاتی همچون تاریخ تولد، شماره کارت اعتباری و غیره نیز می توانند دارای حساسیت باشند و در صورتی که به دست افراد بدخواه بیفتند می توانند باعث مشکلات و گرفتاری هایی شوند.

با توجه به اینکه امروزه استفاده از اینترنت در اماکن عمومی و کافی نت ها نیز مشتریان زیادی پیدا کرده است، بنابراین خاموش نمودن خاصیت AutoComplete کنترل های متنی که حاوی اطلاعات حساس می باشند، یکی از الزاماتی است که طراحان وب همواره باید مد نظر داشته باشند.

 راه حل:

کنترل TextBox دارای خصوصیتی به نام AutoCompleteType می باشد که در صورتی که مقدار این خصوصیت را برابر Disabled تعیین کنیم، خاصیت AutoComplete این کنترل خاموش می شود. اما متاسفانه مرورگر firefox از این خصوصیت پشتیبانی نمی کند!

راه حل بهتری که در حال حاضر توسط معروفترین مرورگر ها حمایت می شود، استفاده از خصوصیت autocomplete می باشد. در صورتی که این خصوصیت را با مقدار off به یک کنترل TextBox اضافه کنید، خاصیت AutoComplete این کنترل خاموش می شود. در قسمت زیر نحوه ی انجام این کار را ملاحظه می نمایید.

<asp:TextBox ID="TextBox1" runat="server" autocomplete="off" ></asp:TextBox>