2013-06-26 4 views
19

Wenn ich ein Feld <input> mit dem Attribut readonly habe, wird es immer noch mit dem I-beam Textcursor angezeigt. Gibt es eine Möglichkeit, den Cursor daran zu hindern, angezeigt zu werden?Verwenden Sie das Attribut readonly in , ohne den Cursor zu ändern

Ich kann das Attribut disabled nicht verwenden, weil request.getParameter() nicht auf deaktivierten Feldern funktioniert.

+0

Wie bauen Sie (JSP - Code? HTML-Code?) Die ''? – acdcjunior

+0

Wenn Sie erklären möchten, welchen Cursor Sie meinen, sagen Sie "Mauszeiger" vs "Tastatur-Cursor" oder "[Zeiger] (https://en.wikipedia.org/wiki/Pointer_ (graphical_user_interfaces))" vs "[Caret] (https://en.wikipedia.org/wiki/Caret_navigation) ". Beide Cursor sehen in einem Textfeld wie ein I-Beam aus. – Tgr

+1

Nur hinzufügen möchten, 'request.getParameter()' funktioniert nicht, da, wenn Sie das Attribut "deaktiviert" auf Ihr Element wie wählen oder eingeben, es nicht gesendet werden, wenn es Teil eines Formulars @ Premeshankar Tiwari –

Antwort

4

dieses Markup in Ihrer Form testen Textfeld

<input type="text" value="test" onfocus="this.blur()" readonly="readonly" />

Hauptsache, die hilft Ihnen, den Cursor verstecken ist onfocus = "Diese .verwischen()".

+1

Oh ... großartig ... Wie kann ich das vorher nicht bemerken ... funktioniert in Firefox aber in IE braucht es Zeit zu verwischen ... immer noch eine gute Lösung..danke –

+0

Dieses Szenario funktioniert nicht gut mit IE . Ich würde es vorziehen, den Cursor im Bootstrap-CSS zu überschreiben und meine CSS-Pointer-Eigenschaft zu schreiben, wobei ' 'als' readonly' zurückbleibt. – instinct

26

Die Idee der readonly Elemente ist, dass Sie den Text immer noch lesen und kopieren können, nur nicht bearbeiten. Das heißt, Sie können den Cursor mit CSS attribute selectors ändern. Dieses Beispiel wird mit einem readonly Attribut jedes input Element entsprechen:

input[readonly] { 
    cursor: pointer; 
} 
+0

I ist habe es ausprobiert ... es zeigt nur den jeweiligen Cursor, wenn man den Mauszeiger bewegt ... aber wenn man auf ... klickt, bekommt das Feld den Cursor .. –

+3

+1 Guter Punkt über Auswahl und Kopieren! – frequent

+3

Wenn es nicht funktioniert, versuchen Sie Cursor: Zeiger! Wichtig; Dies sollte stärkere Standardeinstellungen überschreiben. Ich bin vertrauter geworden, je mehr ich mit Twitter Bootstrap arbeite. : | –

12

Ich möchte nicht Bootstrap die Standardstile außer Kraft zu setzen, damit ich zusammen mit folgender Lösung gekommen:

Meine WENIGER Datei:

input[readonly] { 
    &.default-cursor { 
     cursor: default; 
    } 
} 

Oder in CSS:

input[readonly].default-cursor { 
    cursor: default; 
} 

My HTML :

<input type="text" class="form-control text-xl default-cursor" readonly> 
+0

Das ist IT, danke Mann!:) –

+0

@totas: Vielen Dank! Das ist die beste Antwort. – PhatHV

4

Für Leute, die das Caret überhaupt nicht sehen wollen:

Verwandte Themen