-2

有没有办法用JS改变文本输入的显示?

例如:我在文本字段中输入:“请帮助”

我希望它在输入时直接显示(在文本输入中为:“help ******”

所以只是第二个单词会被改成“*****”,但是提交的时候要保持它的值

4

1 回答 1

0

尝试利用input事件,.replace()

var text = "", res = "";

document.querySelector("input").oninput = function() {

  this.value = this.value.replace(/p(?=l)|l(?=e)|e(?=a|s)|a|s|e\s/, function(m) {
      text += m
      return "*"
  });
  
  if (this.value.length > 10 && this.value.slice(-2) === "*e") {    
    text += this.value.slice(-1);
    this.value = this.value.replace(/e$/, "*");   
    res = this.value.slice(0, 5).concat(text);
    // do stuff with `res`
    document.querySelector("label").innerHTML = res;
    text = res = "";
  }  
}
<input type="text" /><label></label>

于 2015-08-30T19:29:28.103 回答