1

我正在使用 jQuery 处理表单。在表单中,我试图在用户输入后立即更新字段。很像,当用户输入一些特殊字符时,它会删除它们并同时更新文本。我正在使用 jquery 来做同样的事情。但是我的代码不起作用。

这是我所做的:

表格代码:

<form name="user">
   <input name="appShortName" type="text" class="form-control" id="inputappShortName" placeholder="Application Name">
</form>

jQuery代码:

$(function(){
   $('#appShortName').keyup(function(){
      $('#appShortName').textreplace(/[^\w]/gi, '');
   });
});
4

5 回答 5

2

use #inputappShortName instead of #appShortName

$('#inputappShortName').keyup(function(){
    var newValue = $(this).val().replace(/[^\w]/gi, '')
    $(this).val(newValue);
});

check this fiddle

于 2013-11-07T08:32:17.470 回答
1

You need to use val() as a getter, and val('value') as a setter. Try this:

$('#appShortName').keyup(function(){
    var newValue = $(this).val().replace(/[^\w]/gi, '')
    $(this).val(newValue);
});

Also, the id of the attribute in your HTML and the jQuery selector do not match, is that a typo?

于 2013-11-07T08:30:00.763 回答
1

您已尝试此代码。

$('#inputappShortName').keyup(function(){
    var newValue = $(this).val().replace(/[^\w]/gi, '')
    $(this).text(newValue);
});
于 2013-11-07T08:45:59.510 回答
1

试试这样的,短版

    $(function(){
       $('#inputappShortName').keyup(function(){
           this.value = this.value.textreplace(/[^\w]/gi, '');
       });
    });
于 2013-11-07T08:34:30.963 回答
0

如果你想在没有 id 的情况下定位输入字段,你可以使用这个:

$(function(){
    $('input[name="appShortName"]').keyup(function(){
        var newValue = $(this).val().replace(/[^\w]/gi, '')
        $(this).val(newValue);
    });
});

jsfiddle:http: //jsfiddle.net/x65St/

于 2013-11-07T08:40:02.540 回答