【问题标题】:How can I add an unremovable suffix to an HTML input field如何向 HTML 输入字段添加不可删除的后缀
【发布时间】:2025-12-01 03:10:02
【问题描述】:

使用 jQuery,如何将默认后缀 , Demos 添加到无法删除的输入字段中,并且仍然允许您在后缀之前键入内容?

默认:,演示
内容:myText、Demos

任何帮助都是宝贵的!

【问题讨论】:

  • 为什么不添加更改事件的后缀?
  • 如果后缀不能改变,为什么首先在输入中?

标签: javascript jquery html html-input


【解决方案1】:

这是一个使用 Jquery 在更改输入字段时添加后缀的代码:

$('#input').on('change focus unfocus', function(){
 var inputValue = $(this).val();
 var suffix = ", Demos";
 if(!(inputValue.indexOf(suffix) > -1)){
    var newVal = inputValue + suffix;
    $(this).val(newVal);
 }else{
 var suffixLength = inputValue.indexOf(suffix) + suffix.length;
 var len = inputValue.length - suffixLength;  
 if(len >0){ 
    $(this).val((inputValue.slice(suffixLength, inputValue.lenght))+suffix);
 }
 }

});

这是JSFiddle

如果在应用后缀后进行更改,您可能需要考虑要做什么,要么删除所有内容,要么保留所有内容,但删除后缀后的所有字符。 此外,您可能希望使用验证模式来检查是否应用了后缀。

编辑: JSFIddle 和代码已更新,使后缀几乎不可删除。

【讨论】: