如何在输入文本后在同一字段中附加输入
我有一个输入字段,我想在输入时附加文本并保留其中的前一个值
以下是代码
我想要的是当用户开始输入时,输入字段的起始文本应保留在那里,即“Value1-”,并将文本附加到其中,如“Value1-3433”。
我希望你能得到我的一点帮助,我们将不胜感激。
这是你想要的吗 ?
DEMO
jQuery的
$('#txt1').on('keyup',function(){ console.log($(this).val().substr( 0 , 7)) ; if($(this).val().substr( 0 , 7) != "Value1-") { $(this).val('Value1-'); } });
HTML
如果我说得对,使用纯JavaScript,这就是你需要做的:
- 当页面加载
时调用函数
start()
。 在输入TextField中打印文本“Value1-”。 由于此function仅被调用一次,因此Value1-将仅打印一次。 - 创建另一个
function append()
,您应该使用onchange()
调用它并执行:
`的document.getElementById( ‘的outputText’)。值=的document.getElementById( ‘TXT1’)。值。
希望这可以帮助。
使用以下代码来实现此目的。
Jquery代码:
$('#txt1').on('keyup',function(){ var str=$(this).val(); var newstr = str.substring(0, 7); if(newstr != "Value1-") { $(this).val("Value1-"); } });
HTML代码:
工作Jsfiddle链接
工作小提琴
-
附加
position:absolute
的标签
HTML并触发
onchange
事件,更改添加Value1-
和用户输入… -
添加
Value1
onchange
事件$('#txt2').change(function () { var str = $(this).val().replace('Value1-',''); $(this).val('Value1-'+str); });
-
最后 ,我猜你需要的是……
$('#txt3').keypress(function (e) { var pos = $(this).getCursorPosition(); if (pos < 7 ||(pos==7 && e.keyCode == 8) ) { e.preventDefault(); } });
资料来源:@ MarkB29在这个答案的大力支持下制作