ইনপুট মানগুলি ক্যাশে / সংরক্ষণ না করতে ব্রাউজারকে বলার জন্য পৃষ্ঠা তৈরি করুন


116

বেশিরভাগ ব্রাউজারগুলি ইনপুট মানগুলি তৈরি করে। সুতরাং যখন ব্যবহারকারী কোনও পৃষ্ঠা রিফ্রেশ করে তখন ইনপুটগুলির একই মান থাকে।

এখানে আমার সমস্যা। যখন কোনও ব্যবহারকারী সংরক্ষণে ক্লিক করেন , সার্ভার পোস্ট করা ডেটা (যেমন চেক করা পণ্যগুলি) বৈধ করে, এবং বৈধ না হলে ব্রাউজারে এটি আবার প্রেরণ করে। তবে উপরে বর্ণিত হিসাবে, যদিও সার্ভার কিছু মানের জন্য নির্বাচন সাফ করে, তবুও সেগুলি ব্রাউজারের ক্যাশের কারণে নির্বাচিত হতে পারে!

আমার ডেটাটিতে অদৃশ্য রয়েছে (প্যারেন্ট আইটেম নির্বাচন না হওয়া অবধি) চেকবক্স, তাই ব্যবহারকারী আবার সচেতন হতে পারে না যে কিছু পূর্ববর্তী মানটি এখনও নির্বাচিত রয়েছে, যতক্ষণ না আবার সংরক্ষণ ক্লিক করুন এবং একটি ত্রুটি বার্তা পান - যদিও ব্যবহারকারী মনে করে এটি এটি নয়। যা বিরক্তিকর।

এটি Ctrl+ করে সমাধান করা যেতে পারে F5, তবে এটি কোনও সমাধানও নয়। কোনও ফর্ম / পৃষ্ঠায় ফর্ম ইনপুট ডেটা ক্যাশে না করার জন্য ব্রাউজারকে বলার একটি স্বয়ংক্রিয় / প্রোগ্রামিক উপায় আছে?


1
আপনার জন্য <form autocomplete="off"...একটি বিকল্প? এই সমস্যাটি সমস্ত ব্রাউজারে দেখা যাচ্ছে, বা বিশেষত একটিতে?
ডেভিড কলার

ড্রপ ডাউন <select>তালিকার রেফারেন্স সহ এই প্রশ্নের উত্তর দেওয়ার কোনও উপায় আছে কি ? আমার একটি তালিকা আছে এবং একটি selectedপছন্দ নির্ধারণ করেছি তবে পৃষ্ঠাকে রিফ্রেশ করে পূর্ববর্তী নির্বাচিত বিকল্পগুলি ধরে রাখা হয়েছে।
মার্টিন

আমি বিপরীতটি অর্জন করতে চাই - প্রতিটি পৃষ্ঠার ইনপুট মানগুলি পিছনে বোতামে সংরক্ষণ করুন (সেই অনুযায়ী দু'বার ফিরে আসুন-ক্লিক করুন)। প্রচুর জেএস কোড ব্যবহার করার চারপাশে বিভিন্ন উদাহরণ রয়েছে, (যা সত্যই আইএমএইচও কাজ করে না) তবে - এর কোন সহজ উপায় আছে? আমি উভয় ফর্ম এবং ইনপুট ক্ষেত্রগুলিতে স্বতঃপূরণ = "চালু" চেষ্টা করেছি - কাজ করে না। ব্রাউজারটি হ'ল ক্রোম।
দিমিত্রি জেড

উত্তর:


197

আপনি কি স্পষ্টভাবে মানগুলি ফাঁকা হিসাবে সেট করছেন? উদাহরণ স্বরূপ:

<input type="text" name="textfield" value="">

এটি ব্রাউজারগুলির যেখানে ডেটা রাখা উচিত নয় সেখানে থামানো উচিত। বিকল্পভাবে, আপনি autocompleteফর্ম ট্যাগটিতে বৈশিষ্ট্যটি যুক্ত করতে পারেন :

<form autocomplete="off" ...></form>

1
আমি চেকবক্সগুলি নিয়ে কথা বলি তাই আমি "" এর মান সেট করতে পারি না। এবং, স্বতঃসম্পূর্ণ বন্ধের অর্থ কি "যখন ড্রপডাউন স্বতঃপূরণ তালিকার জন্য" কেবল "F5" টিপেন না তখন ফর্ম ইনপুট মানগুলি সংরক্ষণ না করা হয়?
কুইন 3

2
বিকাশকারী.মোজিলা.আর্গ.এন / হা / হাও_ টু_টর্ন_অফ_ফর্ম_আউটোকম্প্লেশন অনুসারে , স্বয়ংক্রিয়তা = বন্ধ কমপক্ষে গেকোর ক্ষেত্রে "সেশন হিস্ট্রি ক্যাচিং" প্রভাবিত করে in আমি যা যা প্রয়োজন তার জন্য এটি কাজ করে কিনা তা পরীক্ষা করব।
কুইন 3

1
@ কুইন 3: হ্যাঁ, চেকবক্সগুলি একটি সমস্যা কারণ স্পষ্টভাবে "চেক করা হয়নি" বলার উপায় নেই। যদি আপনার এখনও সমস্যা হয় তবে আপনি চেষ্টা করতে পারেন checked="false", এটি কিছু ব্রাউজারে কাজ করতে পারে। আরেকটি বিকল্প হ'ল জাভাস্ক্রিপ্ট / jQuery ব্যবহার করে পৃষ্ঠা লোডের সমস্ত চেকবক্সকে স্পষ্টতই আনটিক করুন।
অসন্তুষ্ট গোয়াট

1
@ কুইন 3, আপনার অর্থ "স্বতঃপূরণ = বন্ধ" নয় "স্বতঃপূরণ = বন্ধ"
ম্যাট বেকার

2
উত্তর এবং পরামর্শগুলির সমস্তই আমার পক্ষে কার্যকর হয়নি। Chrome ব্যবহার করে এবং develeoping .net
Hakan

45

থেকে একটি স্ট্যাক ওভারফ্লো রেফারেন্স

ব্রাউজারটি ইতিমধ্যে মানটি সংরক্ষণ করে যাতে আপনার যুক্ত করা উচিত তবে এটি মান = "" দিয়ে কাজ করে না।

একটি ইনপুট ট্যাগের জন্য বিশিষ্ট স্বয়ংসম্পূর্ণতা আপনি সেট করতে পারেন:

<input type="text" autocomplete="off" />

আপনি কোনও ফর্মের জন্য স্বতঃপূরণও ব্যবহার করতে পারেন।


9
ক্রোমে, autocomplete="off"পৃথক ফর্ম-উপাদানগুলিতে ব্যবহার করার সময় এর কোনও প্রভাব নেই - এমনকি valueবিশিষ্টরূপে খালি সেট করেও , এবং Cache-Control: Must-Revalidateশিরোনাম পাঠানোর সময় , এর কোনও প্রভাব ছিল না। ক্রোমে এই আচরণটি দমন করতে আমাকে নিজেই উপাদানটির autocomplete="off"বৈশিষ্ট্যটি প্রয়োগ করতে হয়েছিল <form>
mindplay.dk

আমি ফর্মটিতে স্বতঃপূরণ = "অফ" করেছিলাম তবে এটি আমার পক্ষে কাজ করে না
কিংসলে সাইমন

আমার আরও তথ্য ব্রাউজারের মতো @ কিংসলেসিমনের প্রয়োজন এবং আপনার ব্রাউজারে এমন কিছু সেটিংস থাকতে পারে যা সঠিক আচরণটি রোধ করে
shareef

1
দেখে মনে হচ্ছে ব্রাউজারের আচরণ বদলেছে: developer.mozilla.org/en-US/docs/Web/Security/…
ডেভিড

এবং এইচটিএমএল বৈধ ফর্ম নোট করা হবে। এবং উদাহরণস্বরূপ এটি অন্যের অভ্যন্তরে পরিপূর্ণ নয়
শরিফ

10

আর একটি উপায় হ'ল এইচটিএমএলে ফর্মের ঠিক পরে জাভাস্ক্রিপ্ট ব্যবহার করে ফর্মটি পুনরায় সেট করতে হবে:

<form id="myForm">
  <input type="text" value="" name="myTextInput" />
</form>

<script type="text/javascript">
  document.getElementById("myForm").reset();
</script>


6

এটি আমার জন্য নতুন ব্রাউজারগুলিতে কাজ করেছে:

autocomplete="new-password"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.