javascript - 禁用 Chrome 中的退格键

标签 javascript

我有一个手机号码输入字段,我希望该输入字段内的“+91”应始终对用户可见......意味着他无法删除它。

所以我计划在 INPUT FIELD 的值等于 +91 时禁用 BACKSPACE 和 DELETE 按钮

这个策略在 FIREFOX 中对我来说运行良好,但在 CHROME 中却完全搞砸了。

我用谷歌搜索了很多,但找不到任何在 CHROME 中禁用 Backspace 的成功代码。 :(

这是我的 FIREFOX 代码

<script  language="JavaScript" type="text/javascript">
document.onkeypress = function(e)  // FireFox/Others 
    {
    var t=e.target.id;
    var kc=e.keyCode;
    if ((kc == 8 || kc == 46) && t == "phonen" && document.getElementById(t).value=="+91")
    { e.preventDefault();
        return false;}
    else {
                return true

    }
   }
   function sett(e)
   {e.value="+91";}
</script>

有人可以建议我如何在 Chrome 中做同样的事情吗???

最佳答案

正如我在评论中所写......甚至不用担心这种方法。只是假装而已。这是一个简单的方法(尽管您可能需要调整字体、间距等):

html:

<div class="prefix-wrapper">
  <span class="prefix">+91</span>
  <input type="text" value="">
</div>

CSS:

.prefix-wrapper {
  position: relative;
}

.prefix-wrapper .prefix {
  position: absolute;
  z-index: 2;
  top: 3px;
  left: 5px;
  color: #999;
}

input {
  padding-left: 30px;
}

演示:http://jsbin.com/elatot/1/

关于javascript - 禁用 Chrome 中的退格键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17061423/

相关文章:

javascript - 为什么Redux.js在init上多次启动reducer函数?

javascript - 如何为 ios 应用程序 obj-c 创建 javascript 接口(interface)?

javascript - 从生成的 html 表中选择一行

javascript - 如何找到一个数的32位

javascript - 在加载 iframe 之前显示 loading.gif

javascript - React - 按下按钮时 native ' Redux Uncaught Error: Actions must be plain objects. Use custom middleware for async actions'

javascript - 棘轮 push.js 与 phonegap (cordova)

javascript - 获取以特定字符串开头的数组的值

javascript - ionic 模板中的 var 未定义,但 console.log 显示它

javascript - 标记复选框后的必填字段