Closed. This question needs debugging details。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                
                    4年前关闭。
            
        

    

感谢Izaaz Yunus在How to make some piece of text inside a input field non editable?的答复

这两个角色对我有用,但对我的要求略有不同。

我正在从ajax /动态调用中获取文本字段的不可编辑字符的某些部分,并且长度不固定。

可以是1或2或3。是国家/地区的电话代码。因此可以是“ 1”,“ 91”,“ 255”(最小长度1和最大3)

请自行回答。

马努

最佳答案

能够解决。
创建一个全局变量

<script>
    var countryCodeLength = 0;


在ajax调用上设置此变量。

success : function(response) {
                $('#contactNo').val(response);
                countryCodeLength = $('#contactNo').val().length;


并在预防上使用它。

$("#contactNo").keydown(function(event){
            console.log(this.selectionStart);
            console.log(event);
            if(event.keyCode == 8){
                this.selectionStart--;
            }
            if(this.selectionStart < countryCodeLength){
                this.selectionStart = countryCodeLength;
                console.log(this.selectionStart);
                event.preventDefault();
            }
        });

09-25 19:55