JavaScript实现替换字符串中最后一个字符的方法

2017-03-17 09:20:37 JavaScript
这篇文章主要介绍了Javascript实现替换字符串中最后一个字符的方法,涉及Javascript字符串的转换与运算相关操作技巧,需要的朋友可以参考下

本文实例讲述了Javascript实现替换字符串中最后一个字符的方法。分享给大家供大家参考,具体如下:

1、问题背景

在一个输入框中,限制字符串长度为12位,利用键盘输入一个数字,会将字符串中最后一位替换,比如:111111111111,再输入一个3,会显示111111111113

2、具体实现

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Javascript替换字符串中最后一个字符</title>
<script type="text/Javascript">
  function replaceStr()
  {
    var e = event || window.event || arguments.callee.caller.arguments[0];
    var input_str = document.getElementById("input_str").value;
    var newStr = input_str.substring(0,11);
    if(e && e.keyCode>=48 && e.keyCode <= 57)
    {
      newStr += (e.keyCode-48);
    }
    document.getElementById("input_str").value = newStr;
  }
</script>
</head>
<body>
  <input type="text" id="input_str" maxlength="12" onkeyup="replaceStr();"/>
</body>
</html>

4、扩展附录

jQuery中的实现方法:

$("#input_str").keydown(function(event){
  var nums = $("#input_str").val();
  var e = event || window.event || arguments.callee.caller.arguments[0];
  var newStr = nums.substring(0,11);
  if(e && e.keyCode>=48 && e.keyCode <= 57)
  {
    newStr += (e.keyCode-48);
  }
  $("#input_str").val(newStr);
});

希望本文所述对大家Javascript程序设计有所帮助。