防止在页 ASP.net 的所有文本框中输入字符

本文关键字:文本 字符 输入 ASP net | 更新日期: 2023-09-27 18:36:37

我有一个面板,用于以编程方式创建文本框。当用户单击保存时,需要连接这些文本框中的值,并且我需要一个字符来分隔每个值。为此,我使用逗号(ASCII 代码 44)。由于我使用的是逗号,因此我想防止在文本框列表的任何文本框中输入任何其他逗号。这样做的最佳方法是什么?

防止在页 ASP.net 的所有文本框中输入字符

如果 jQuery 是一个选项,你可以这样做

$(".no-comma-textbox").on("keydown", function(e){
    if (e.which == 188){
      e.preventDefault();
    }
});

并且您所有的文本框都应该有 class="no-comma-textbox" .

(注意:当我测试时,这个 188 似乎是至少在 Chrome 中用于逗号的正确值)

尝试使用附加到document oninput事件,String.prototype.slice()

document.oninput = function(e) {
  if (e.target.value.slice(-1) === ",") {
    e.target.value = e.target.value.slice(0, -1)
  }
}
var input = document.createElement("input");
input.setAttribute("type", "text");
input.setAttribute("name", "input2");
document.body.appendChild(input);
  <input type="text" name="input0" />
  <input type="text" name="input1" />