我不知道这个问题的正确标题是什么。我的输入框有'静态占位符',例如网址为jsfiddle.net/manyahin/MxRqX
<div class="controls">
<input type="text" />
<span>http://</span>
</div>
用户无法删除http://并在此之后输入文字。 Span有margin-left:减去输入上方的位置,输入有text-ident用于获得span的空闲空间。
当我点击输入时,光标在输入开始时设置,在http之前。当我开始输入时,光标移动到正常位置。如何修复此错误或请给我一个替代方法来实现这一点。抱歉我的英语不好。
答案 0 :(得分:1)
如果输入文本总是需要以http://开头,那么更简单的方法是将它作为标签放在字段之前而不是放在字段中,然后在后端添加http://。或者您可以在后端捕获它并从输入字段读取文本,并在用户未输入此内容时将http://添加到输入文本中。
另一种方式是通过jquery,您可以使用用户输入的任何文本将文本框的值设置为http://。
第三种不太优雅的方法是使用两个输入字段并使用css来定位和设置它们以显示为一个。将第一个字段值设置为http://(假设它始终为http://)并将其设置为只读。
答案 1 :(得分:1)
在css中使用:before
怎么样?
放手一搏.... http://jsfiddle.net/MxRqX/3/