Javascript 设置可以';不能删除

Javascript 设置可以';不能删除,javascript,jquery,html,asp.net,vb.net,Javascript,Jquery,Html,Asp.net,Vb.net,文本框的所有值均以T- 如果用户无法删除T- 谢谢你的帮助试试这个 <input id="field" type="text" value="T-" size="50" /> JS var readOnlyLength=$('#field').val().length; $(“#输出”).text(只读长度); $(“#字段”).on('keypress,keydown',函数(事件){ var$字段=$(此字段); $('#output').text(event.which+

文本框的所有值均以
T-

如果用户无法删除
T-

谢谢你的帮助

试试这个

<input id="field" type="text" value="T-" size="50" />

JS

var readOnlyLength=$('#field').val().length;
$(“#输出”).text(只读长度);
$(“#字段”).on('keypress,keydown',函数(事件){
var$字段=$(此字段);
$('#output').text(event.which+'-'+this.selectionStart);
if((event.which!=37&&(event.which!=39))
&&((this.selectionStart

将标签贴在文本框之前,并将文本框左边框指定为0px,将标签右边框指定为0px。获取值时,将两个值相加。希望它能对你有所帮助。

我脑子里最简单的事情就是在文本框的左边有
T-
作为静态文本,并在设置/获取值之前对文本进行处理谢谢你的回复,这就是我的想法,我猜这是最简单的方法!我的直觉是,您可能会花费大量时间试图找出一些聪明的javascript/jquery,但仍然会错过一些用户可以删除它的情况。另一个选项是添加一个
来检查它是否从它开始,但显然这并不能阻止他们删除它,只是从提交表单开始,每个文本框在这里生成一个
id
的html传递
var readOnlyLength = $('#field').val().length;

 $('#output').text(readOnlyLength);

$('#field').on('keypress, keydown', function(event) {
    var $field = $(this);
    $('#output').text(event.which + '-' + this.selectionStart);
    if ((event.which != 37 && (event.which != 39))
        && ((this.selectionStart < readOnlyLength)
        || ((this.selectionStart == readOnlyLength) && (event.which == 8)))) {
        return false;
    }
});