强制textarea输入以默认文本开头

时间:2013-06-10 19:28:18

标签: javascript jquery html forms input

我有一个textarea(或可编辑的DIV)输入,我总是希望以默认文本开头并且用户无法编辑。例如:

文本框始终以默认值开头:My name is

用户可以并且需要添加他们的名字,例如:My name is David

他们无法删除My name is默认文字。理想情况下,如果用户单击该默认文本的任何位置,光标将跳转到该文本的末尾,因此除了默认值之外,他们甚至没有机会尝试键入内容。退格也是如此,默认文本(My name is)无法删除。

有什么建议吗?我有能力使用Javascript / Jquery。

1 个答案:

答案 0 :(得分:0)

为什么不在文本区域旁边贴一个标签(即:span)并对其进行样式设置,使它们看起来像是一个文本区域。只需将它们排成一行,然后使用css在它们后面设置背景图像(或css边框)以创建文本区域的外观。然后使用css将texalarea的正常边框关闭。应该相当容易编码。棘手的部分只是正确的风格。如果你不介意文本在不同的行上,你可以这样做(来自另一篇文章):

http://jsfiddle.net/eAW2U/

或者如果你想让它们在同一条线上(这只能用于文本框,而不是textarea,你可以漂浮它们

<div style="float:left">etc...

或者您可以使用按键/按键事件检查并查看按键是否会最终更改整个文本的开头,如果是,则取消它。