আমি এই প্রশ্নের সম্পূর্ণ সমাধান খুঁজে পেয়েছি। (আমি এটি ক্রোম 27 এবং ফায়ারফক্স 21 এ পরীক্ষা করেছি)।
দুটি জিনিস জানতে হবে:
- ট্রিগার 'সেভ পাসওয়ার্ড', এবং
- সংরক্ষিত ব্যবহারকারীর নাম / পাসওয়ার্ড পুনরুদ্ধার করুন
1. ট্রিগার 'সংরক্ষণের পাসওয়ার্ড':
জন্য ফায়ারফক্স 21 , 'সংরক্ষণ পাসওয়ার্ড' আলোড়ন সৃষ্টি যখন এটি সনাক্ত একটি ফর্ম ইনপুট টেক্সট ক্ষেত্রের এবং ইনপুট পাসওয়ার্ড ক্ষেত্রের ধারণকারী জমা হয় যে হয়। সুতরাং আমাদের শুধু ব্যবহার করা প্রয়োজন
$('#loginButton').click(someFunctionForLogin);
$('#loginForm').submit(function(event){event.preventDefault();});
someFunctionForLogin()
এজ্যাক্স লগইন করে এবং event.preventDefault()
ফর্মটি জমা দেওয়ার কারণে আসল পুনঃনির্দেশকে অবরুদ্ধ করে যখন সাইন ইন পৃষ্ঠায় পুনরায় লোড / পুনঃনির্দেশ করে ।
আপনি যদি কেবল ফায়ারফক্সের সাথেই ডিল করেন তবে উপরের সমাধানটি যথেষ্ট তবে এটি ক্রোম ২ in তে কাজ করে না Then তারপরে আপনি ক্রোম ২ 27-এ 'পাসওয়ার্ড সংরক্ষণ করুন' কীভাবে ট্রিগার করবেন তা জিজ্ঞাসা করবেন।
জন্য ক্রোম 27 , 'সংরক্ষণ পাসওয়ার্ড' সূত্রপাত হয় পরে এটি রূপ, যার ইনপুট টেক্সট ক্ষেত্রের রয়েছে জমা দিয়ে পৃষ্ঠা থেকে আপনাকে পুনঃনির্দেশিত করা হয় অ্যাট্রিবিউট নাম = 'ব্যবহারকারী নাম' সঙ্গে এবং ইনপুট পাসওয়ার্ড ক্ষেত্রের অ্যাট্রিবিউট নাম = 'পাসওয়ার্ড' দিয়ে । সুতরাং, ফর্মটি জমা দেওয়ার কারণে আমরা পুনঃনির্দেশটিকে অবরুদ্ধ করতে পারি না তবে এজ্যাক্স লগইন করার পরে আমরা পুনঃনির্দেশটি তৈরি করতে পারি। (আপনি যদি এজাক্স লগইনটি পৃষ্ঠাটি পুনরায় লোড না করে বা কোনও পৃষ্ঠায় পুনর্নির্দেশ না করাতে চান তবে দুর্ভাগ্যক্রমে, আমার সমাধান কাজ করে না)) তারপরে, আমরা ব্যবহার করতে পারি
<form id='loginForm' action='signedIn.xxx' method='post'>
<input type='text' name='username'>
<input type='password' name='password'>
<button id='loginButton' type='button'>Login</button>
</form>
<script>
$('#loginButton').click(someFunctionForLogin);
function someFunctionForLogin(){
if(/*ajax login success*/) {
$('#loginForm').submit();
}
else {
//do something to show login fail(e.g. display fail messages)
}
}
</script>
টাইপ = 'বাটন' সহ বোতামটি বোতামটি ক্লিক করা হলে ফর্মটি জমা দেওয়া হবে না। তারপরে, আজাক্স লগইনের জন্য বোতামটিতে একটি ফাংশন বাঁধাই। অবশেষে, $('#loginForm').submit();
সাইন ইন থাকা পৃষ্ঠাতে পুনঃনির্দেশগুলি কল করা । সাইন ইন থাকা পৃষ্ঠাটি যদি বর্তমান পৃষ্ঠা হয় তবে আপনি 'রিফ্রেশ' করতে বর্তমান পৃষ্ঠায় 'SignIn.xxx' প্রতিস্থাপন করতে পারেন।
এখন, আপনি দেখতে পাবেন যে ক্রোম 27 এর পদ্ধতিটি ফায়ারফক্স 21-এও কাজ করে So সুতরাং এটি ব্যবহার করা ভাল।
২. সংরক্ষিত ব্যবহারকারীর নাম / পাসওয়ার্ড পুনরুদ্ধার করুন:
আপনার যদি ইতিমধ্যে এইচটিএমএল হিসাবে হার্ড-কোডড লগইনফর্ম থাকে তবে লগইনফোর্মে সংরক্ষিত পাসওয়ার্ডটি পুনরুদ্ধার করতে কোনও সমস্যা পাবেন না।
যাইহোক, সংরক্ষিত ব্যবহারকারীর নাম / পাসওয়ার্ডটি লগইনফর্মটিকে গতিশীলভাবে তৈরি করতে আপনি js / jquery ব্যবহার করলে লগইনফর্মের সাথে আবদ্ধ হবে না, কারণ সংরক্ষিত ব্যবহারকারীর নাম / পাসওয়ার্ড তখনই দস্তাবেজ লোড হয়।
অতএব, আপনাকে লগইনফর্মটিকে এইচটিএমএল হিসাবে হার্ড-কোড করা এবং লগইনফর্মটিকে গতিশীলভাবে সরিয়ে / প্রদর্শন / আড়াল করতে js / jquery ব্যবহার করতে হবে।
মন্তব্য:
আপনি যদি আজাক্স লগইন করেন তবে autocomplete='off'
ট্যাগ ফর্মটিতে যুক্ত করবেন না
<form id='loginForm' action='signedIn.xxx' autocomplete='off'>
autocomplete='off'
লগইন-এ পুনরুদ্ধারকারী ব্যবহারকারীর নাম / পাসওয়ার্ড তৈরি করবে ফর্ম ব্যর্থ কারণ আপনি এটি ব্যবহারকারীর নাম / পাসওয়ার্ডকে 'স্বতঃপূরণ' মঞ্জুর করেন না।