javascript - 在用户键入时从输入字段中删除字符(keyup)

标签 javascript jquery

我正在寻找一种 js 或 jq 方法来在用户在字段上键入时删除 # 字符。

我试过这个:

$( function() {
    $( ".remove-sharp" ).on( "keyup", function( event ) {
        console.log( 'test' );
        $( this ).val().replace( /\#/, "" );
    } )
} );

我可以看到控制台中打印了“测试”,但这对字段中的字符没有影响;它不会删除#。如何实现?

最佳答案

问题是因为您没有设置 input 的值,只是获取它并进行替换,而不对结果字符串执行任何操作。试试这个:

$(function() {
  $(".remove-sharp").on("keyup", function(event) {
    var value = $(this).val();
    if (value.indexOf('#') != -1) {
      $(this).val(value.replace(/\#/g, ""));
    }
  })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="remove-sharp" />

关于javascript - 在用户键入时从输入字段中删除字符(keyup),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43591256/

相关文章:

javascript - 调用特定的导航选项卡

javascript - 在动态元素上设置背景图像

javascript - 循环遍历对象并显示输入字段

javascript - jPaginate - 帮助确定哪个页面被点击?

javascript - 让前端javascript访问用户私有(private)的文本文件

javascript - 在 Canvas 上绘制和动画书页

javascript - 不使用 safari 浏览器加载 CSS

java - 在签名小程序中隐藏 java 确认对话框

javascript - 在 Javascript 中调用嵌套函数 - 在 jQuery.ajax.success 中调用时未定义错误

jquery 自动完成按键数据库