LastPass को फॉर्म भरने से रोकें


130

क्या लास्टपास ब्राउज़र एक्सटेंशन को "उपयोगकर्ता नाम" के साथ इनपुट फ़ील्ड के साथ HTML-आधारित फ़ॉर्म को भरने से रोकने का कोई तरीका है?

यह एक छिपा हुआ क्षेत्र है, इसलिए मैं नहीं चाहता कि कोई सॉफ़्टवेयर इस क्षेत्र का उपयोग उनके उद्देश्यों के लिए करे:

<input type="text" name="username" id="checkusername" maxlength="9" value="1999" class="longinput" style="display:none">

समाधान "इनपुट क्षेत्र का नाम बदलें" जैसा नहीं होना चाहिए।


12
यदि फ़ील्ड छिपा हुआ है, तो type="hidden"इसे CSS
Reeno

2
ऐसा लगता है कि आपने गलत उत्तर को स्वीकार कर लिया है क्योंकि यह काम नहीं कर रहा है ... अलेक्जेंडर ने जो सुझाव दिया है वह काम करता है, इसलिए आप अपने चयन को चारों ओर स्विच करना चाहते हैं;)
डोमिनिक

2
सुपर सरल $(':input').attr('data-lpignore', true);थाट्स। यह सभी फॉर्मों पर भरने योग्य अंतिम बायपास फॉर्म होगा।
आदर्श मादरेचा

जवाबों:


170

जोड़ा जा रहा है

data-lpignore="true"

एक इनपुट फील्ड ने मेरे लिए ग्रे लास्टपास [...] बॉक्स को निष्क्रिय कर दिया।

से प्राप्त LastPass.com


5
यह मान्य उत्तर होना चाहिए। एलपी इस विशेषता का सम्मान करता है और इसके लिए किसी पागल "खोज" नाम या आईडी या भूमिका की आवश्यकता नहीं होती है।
कोर्नेलियू

28
यह केवल ग्रे आइकन को हटाता है, लेकिन इनपुट
ऑटोफिल

26
यह स्वीकृत उत्तर नहीं होना चाहिए क्योंकि यह "LastPass को फ़ॉर्म भरने से रोकना नहीं है"
कॉनरोड वारहोल

3
उत्तर में दिए गए लिंक के अनुसार ( lastpass.com/support.php?cmd=showfaq&id=10512 ), LP केवल आइकन को उस फ़ील्ड पर प्रदर्शित होने से रोकता है
कुणाल

47

दो शर्तों को पूरा करना होगा:

  1. प्रपत्र (तत्व नहीं) की जरूरत है autocomplete="off"विशेषता
  2. अंतिम उपयोगकर्ता को इस विकल्प को सक्षम करने की आवश्यकता है: Settings > Advanced > Allow pages to disable autofill

तो यह उपयोगकर्ता और डेवलपर दोनों पर निर्भर करता है।


39

मेरे लिए जो काम किया गया है वह फ़ॉर्म की आईडी में "-search-" शब्द है, कुछ ऐसा है <form id="affiliate-search-form">- और लास्टपास अपने तत्वों को फॉर्म इनपुट पर नहीं जोड़ता है। यह कुछ सरल के साथ काम करता है, <form id="search">लेकिन साथ काम नहीं करता है<form id="se1rch">


8
यह भी दबा दिया जाता है कि: - यदि फ़ील्ड नाम या वर्ग विशेषता में "खोज" या "srch" शब्द शामिल हैं - यदि प्रपत्र आईडी या नाम के गुण में "खोज" है - प्रपत्र भूमिका विशेषता "खोज" है
e1v

1
दुर्भाग्य से, यह पासवर्ड फ़ील्ड के लिए काम नहीं करता है। प्रभावी रूप से, फ़ॉर्म अभी भी स्वत: भरा हुआ है। मेरे मामले में, searchउपयोगकर्ता नाम और पासवर्ड दोनों को वर्गों के रूप में जोड़कर उपयोगकर्ता नाम फ़ील्ड पर तारांकित बटन अक्षम कर दिया गया है, लेकिन पासवर्ड फ़ील्ड जैसा है वैसा ही रहता है।
माइक रॉकिट

2
हां, मैं पुष्टि कर सकता हूं कि इस दृष्टिकोण का उपयोग करते समय पासवर्ड फ़ील्ड अभी भी भरे हुए हैं। :-(
साइमन ईस्ट

7
यह अब वर्तमान लास्टपास संस्करणों पर लागू नहीं होता है। तो इस जवाब को हटाया जाना चाहिए।
हेरोसेलोहिम

4
Add -search- मेरे लिए Chrome 51, LastPass 4.1.17 पर एकल इनपुट फ़ील्ड काम करता है। इसे फॉर्म में जोड़ने से कोई फायदा नहीं होता है।
एलेक्स

18

मुझे पता है कि मुझे यहां पार्टी में देर हो रही है, लेकिन मुझे यह तब मिला जब मैं अपने फॉर्म को बर्बाद करने से रोकने के लिए कोशिश कर रहा था। @ ताकेशिन सही है कि स्वत: पूर्ण पर्याप्त नहीं है। मैंने प्रतीक को छुपाने के लिए नीचे दिए गए हैक को करना समाप्त कर दिया। सुंदर नहीं, लेकिन मुझे आइकन से छुटकारा मिल गया।

यदि कोई अंतिमपास डेवलपर्स इसे पढ़ रहे हैं, तो कृपया हमें उपयोग करने के लिए एक विशेषता दें, इसलिए हमें इस तरह से सामान का सहारा नहीं लेना पड़ेगा।

form[autocomplete="off"] input[type="text"] {
    background-position: 150% 50% !important;
}

2
यह एकमात्र समाधान है जो मेरे लिए काम करता था (यहां तक ​​कि अंतिम सेटिंग के साथ खेलने के साथ, जो मैं वास्तव में अपने उपयोगकर्ता को वैसे भी करने की उम्मीद नहीं करता हूं), हालांकि यह background-imageइनपुट फ़ील्ड्स पर अपने आप को सेट करने के लिए मेरे साथ संघर्ष करता है (मैं इसे स्पष्ट करना पसंद करता हूं) इनपुट फ़ील्ड पर बटन ") - जो मामले में क्या भी मेरे लिए काम किया बस की स्थापना की गई थी background-imageऔर background-positionसाथ !importantLastPass अंतर्निहित शैली ओवरराइड करने के लिए।
Guss

बहुत रचनात्मक सोच! इसके लिए धन्यवाद!
हावर्ड

18

मुझे लगता है कि लास्टपास autocomplete="off"इनपुट के लिए विशेषता का सम्मान करता है, लेकिन मैं 100% निश्चित नहीं हूं।

EDIT जैसा कि दूसरों ने बताया है। यह केवल तभी काम करता है जब यूजर ने अंतिम बार इसे सम्मानित करने के लिए कॉन्फ़िगर किया हो।


20
हाँ यह करता है, लेकिन डिफ़ॉल्ट रूप से नहीं: helpdesk.lastpass.com/extension-preferences/advanced
Marco

12
मैं पुष्टि कर सकता हूं कि लास्टपास autocomplete="off"फॉर्म स्तर पर सम्मान नहीं करता है। इसने मुझे "उपयोगकर्ता संपादित करें" फ़ॉर्म पर एक घंटे का विकास समय बर्बाद किया जो गलत ईमेल पता प्रदर्शित करने के लिए दिखाई दिया। पिछलेपास की प्राथमिकताओं में "पहले से भरे हुए फ़ील्ड को अधिलेखित न करें" विकल्प है, जो बहुत मदद करता है।
जेसन

7
जैसा कि मार्को ने कहा है, आपको इस व्यवहार को सक्रिय करने की आवश्यकता है। प्राथमिकताएँ -> उन्नत-> ऑटो कम्प्लीट का सम्मान करें = बंद करें: वेबसाइटों को ऑटोफिल को निष्क्रिय करने की अनुमति दें
Dan

आप इसे कैसे लास्ट में बाईपास करते हैं?
क्रैश893

14

मेरे लिए या तो काम किया है type=searchजो थोड़े के बराबर textया उपयोग कर रहा है role=note

आप लास्टपास-जावास्क्रिप्ट की जांच कर सकते हैं, लेकिन यह बहुत बड़ा है, हो सकता है कि आप वहां कुछ वर्कअराउंड पा सकते हैं, जो मैंने देखा है वे केवल 4 इनपुट प्रकारों की जांच करते हैं, इसलिए input type=searchएक वर्कअराउंड होगा:

!c.form && ("text" == c.type || "password" == c.type || "url" == c.type || "email" == c.type) && lpIsVisible(c))

इसके अलावा roleवे -keywords हैं जिन्हें वे अनदेखा करते हैं:

var c = b.getAttribute("role");
switch (c) {
case "navigation":
case "banner":
case "contentinfo":
case "note":
case "search":
case "seealso":
case "columnheader":
case "presentation":
case "toolbar":
case "directory":`

मैंने LastPass की जाँच की onloadwff.js, कोड की 26.960 लाइनों के लिए तैयार :)


5
मैंने ऊपर दिए गए सभी उत्तरों की कोशिश की और type=searchकेवल एक चीज है जो मेरे लिए काम करती है।
रयान किंग

1
+1, ऐसा लगता type=searchहै कि लास्टपास "रिस्पेक्ट ऑटोकॉमिश्ड = ऑफ" सेटिंग की स्थिति की परवाह किए बिना ऑटोफिल को रोकने का एकमात्र तरीका है।
जॉन जॉइस

जोड़ने की कोशिश role="note"या type="search"। नवीनतम क्रोम और नवीनतम लास्टपास पर किसी ने काम नहीं किया।
निकिता Nik

ऐसा लगता है कि lpignoreयह फिर से काम कर रहा है, मुझे यह https://jsfiddle.net/78z0L1sa/3/
बताएं

OMG, यह कष्टप्रद है, LastPass मेरे टाइप = टेक्स्ट पासवर्ड फ़ील्ड को टाइप = पासवर्ड में परिवर्तित कर रहा था और इस विशेष स्क्रीन पासवर्ड को देखने की आवश्यकता थी, तब LastPass ने साइट पासवर्ड जोड़ा और उपयोगकर्ता द्वारा सही पासवर्ड के बिना न जाने कब इसे सहेज लिया। क्रेडेंशियल बदल रहा था और अन्य सिस्टम से उनका कनेक्शन तोड़ रहा था। Lpignore ने केवल आइकन को हटा दिया, अन्य समाधानों के लिए उपयोगकर्ता सहभागिता की आवश्यकता थी, जो आदर्श नहीं है। अंत में, काम करने के लिए खोज के प्रकार को बदलना; हालाँकि मुझे किसी और के सॉफ़्टवेयर के कारण ऐसा करने से नफरत है। वैसे भी, इस पर अप-वोट।
जेसन मार्टिन

10

इनपुट आईडी में "खोज" जोड़ें

<input type="text" name="user" id="user-search"/>

1
मेरे लिए ठीक काम करता है। नवीनतम क्रोम पर परीक्षण किया गया। यह एक हैक का एक सा है, लेकिन दूसरों के रूप में संभावित रूप से तोड़ने के रूप में नहीं तो मैं इसके लिए जाऊंगा।
१४:१६

6

पार्टी के लिए थोड़ी देर हो गई है, लेकिन मैंने इसे केवल फॉर्म को संशोधित करने के साथ हासिल किया है:

<form autocomplete="off" name="lastpass-disable-search">

मुझे लगता है कि यह मूर्खतापूर्ण सोच है कि यह एक खोज का रूप है। हालांकि यह पासवर्ड फ़ील्ड के लिए काम नहीं करता है! लास्टपास इस मामले में नाम क्षेत्र की अनदेखी करता है।

एकमात्र तरीका जो मैं ऐसा करने में कामयाब रहा, वह है फॉर्म के शीर्ष पर सीधे निम्नलिखित को जोड़ना:

<form autocomplete="off">
    <div id="lp" ><input type="text" /><input type="password" /></div><script type="text/javascript">setTimeout(function(){document.getElementById('lp').style.display = 'none'},75);</script>
</form>

यह एक बुरा झिलमिलाहट का कारण बनता है, लेकिन ऑटोफिल बकवास को दूर करता है - हालांकि यह अभी भी "जनरेट पासवर्ड" विजेट नहीं दिखाता है। लास्टपास पहले से ही इंतजार कर रहा है और फिर यह देखने के लिए जांच करता है कि क्या कोई दृश्य पासवर्ड फ़ील्ड हैं, इसलिए ऊपर दिए गए मॉक फ़ील्ड को छिपाना या सिकोड़ना संभव नहीं है।


5

लास्टपास के नवीनतम अक्टूबर 2019 बग्गी रिलीज के लिए, यह सरल फिक्स सबसे अच्छा लगता है।

जोड़ना

type="search"

अपने इनपुट के लिए।

लास्ट रूट रूट अपने ऑटोफिल के typeसाथ क्या करना है यह निर्धारित करने के लिए विशेषता की जांच करता है , और यह इस html5 पर कुछ भी नहीं करता हैtype "खोज के ।" यकीन है कि यह हल्का हैकी है, लेकिन यह एक लाइन परिवर्तन है जिसे आसानी से हटाया जा सकता है जब वे अपनी छोटी-छोटी स्क्रिप्ट को ठीक करते हैं।

नोट: ऐसा करने के बाद, आपके इनपुट को कुछ ब्राउज़रों द्वारा अलग तरह से स्टाइल किया जा सकता है, यदि वे typeविशेषता पर उठाते हैं । आप इस का निरीक्षण, तो आप इसे ब्राउज़र-विशिष्ट सीएसएस गुण सेट करके ऐसा होने से रोका जा सकता है -webkit-appearanceऔर -moz-appearanceकरने के लिए 'none'अपने इनपुट पर।


4

यह ES6 स्टाइल कोड मेरे लिए मददगार था क्योंकि इसने मेरे सभी इनपुट नियंत्रणों में डेटा-लिपिग्नोर जोड़ दिया:

const elements = document.getElementsByTagName("INPUT");
for (let element of elements) {
    element.setAttribute("data-lpignore", "true");
}

विशिष्ट INPUT नियंत्रण तक पहुंचने के लिए, कोई व्यक्ति कुछ इस तरह लिख सकता है:

document.getElementById('userInput').setAttribute("data-lpignore", "true");

या, आप इसे वर्ग नाम से कर सकते हैं:

const elements = document.getElementsByClassName('no-last-pass');
for (let element of elements) {
    element.setAttribute("data-lpignore", "true");
}

1

यहां कोई भी विकल्प (स्वत: पूर्ण, डेटा-लिग्निनोर आदि) ने लास्टपास को मेरे फॉर्म फ़ील्ड को दुर्भाग्य से भरने से नहीं रोका। मैंने समस्या के लिए और अधिक स्लेज-हैमर दृष्टिकोण लिया और nameइसके बजाय एसिंक्रोनस रूप से जावास्क्रिप्ट के माध्यम से इनपुट विशेषताओं को सेट किया । निम्न jQuery-निर्भर फ़ंक्शन (प्रपत्र के ऑनसुबमिट ईवेंट हैंडलर से मंगवाए गए) ने चाल चली:

function setInputNames() {
    $('#myForm input').each(function(idx, el) {
        el = $(el);
        if (el.attr('tmp-name')) {
            el.attr('name', el.attr('tmp-name'));
        }
    });
}

$('#myForm').submit(setInputNames);

फॉर्म में, मैंने बस tmp-nameसमकक्ष nameविशेषताओं के स्थान पर विशेषताओं का उपयोग किया । उदाहरण:

<form id="myForm" method="post" action="/someUrl">
    <input name="username" type="text">
    <input tmp-name="password" type="password">
</form>

अपडेट 2019-03-20

मैं अभी भी AngularJS के आधार पर उपरोक्त समस्याओं के साथ कठिनाइयों में भाग गया हूं, जो प्रपत्र फ़ील्ड्स के आधार पर nameगुणस्थानों के लिए सही रूप से फ़ील्ड सत्यापन त्रुटि संदेशों को प्रस्तुत करने के लिए विशेषता है।

अंत में, एकमात्र उपाय जो मैं अपने पासवर्ड बदलने के फॉर्म पर लास्टपास पासवर्ड फ़ील्ड्स को रोक सकता था, वह था:

  1. input[type=password]पूरी तरह से उपयोग से बचें , और
  2. क्षेत्र के नाम में 'पासवर्ड' नहीं है

चूंकि मुझे अपने मामले में सामान्य रूप से फॉर्म जमा करने में सक्षम होना चाहिए, इसलिए मैंने अभी भी क्षेत्र के नामों को 'समय में' अपडेट करने के लिए अपने मूल समाधान को नियोजित किया है। पासवर्ड इनपुट फ़ील्ड के उपयोग से बचने के लिए, मैंने पाया कि यह समाधान बहुत अच्छी तरह से काम करता है।


0

खोज का नाम बदलने की कोशिश की लेकिन किसी कारण से जो काम नहीं किया। मेरे लिए क्या काम निम्नलिखित है:

  1. स्वत: पूर्ण - स्वतः पूर्ण = "बंद"
  2. प्रपत्र फ़ील्ड इनपुट प्रकार को पाठ में बदलें
  3. इनपुट को मास्क करने के लिए अपने सीएसएस में एक नया वर्ग जोड़ें, पासवर्ड फ़ील्ड का अनुकरण करता है
  4. css bit: input.masker {-webkit-text-security: डिस्क; }

FF और Chrome के नवीनतम संस्करणों में परीक्षण और परीक्षण किया गया।


0

क्रोम में रेजर @ Html.EditorFor बॉक्स भरने से अंतिम रोकने के लिए यहां मैंने क्या काम किया है:

अपने टूलबार में सक्रिय लास्टपास आइकन पर क्लिक करें, फिर खाता विकल्प> एक्सटेंशन प्राथमिकताएं पर जाएं।

इस स्क्रीन पर "पहले से भरे हुए फ़ील्ड को न लिखें" (नीचे)

अगला, बाईं ओर "उन्नत" पर क्लिक करें।

इस स्क्रीन पर "AutoComplete = off का सम्मान करें: वेबसाइटों को ऑटोफिल को अक्षम करने की अनुमति दें"।

मुझे अपने ASP cshtml फॉर्म में कुछ विशेष करने की आवश्यकता नहीं थी, लेकिन मेरे पास @ Html.EditorFor बॉक्स के रूप में डिफ़ॉल्ट मान था।

मुझे उम्मीद है कि यह किसी के लिए मदद और काम करता है। मुझे वेब पर इस समस्या पर कोई रेज़र-विशिष्ट सहायता नहीं मिली, इसलिए मैंने सोचा कि मैं इसे जोड़ूंगा क्योंकि मैंने इसे उपरोक्त लिंक और योगदानों की मदद से समझ लिया था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.