我正在使用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, '');
});
});
答案 0 :(得分:2)
使用#inputappShortName
代替#appShortName
$('#inputappShortName').keyup(function(){
var newValue = $(this).val().replace(/[^\w]/gi, '')
$(this).val(newValue);
});
检查此fiddle
答案 1 :(得分:1)
您需要使用val()
作为getter,并使用val('value')
作为setter。试试这个:
$('#appShortName').keyup(function(){
var newValue = $(this).val().replace(/[^\w]/gi, '')
$(this).val(newValue);
});
此外,HTML中的属性id
与jQuery选择器不匹配,这是一个错字吗?
答案 2 :(得分:1)
尝试类似这样的东西,缩短版
$(function(){
$('#inputappShortName').keyup(function(){
this.value = this.value.textreplace(/[^\w]/gi, '');
});
});
答案 3 :(得分:1)
您已尝试此代码。
$('#inputappShortName').keyup(function(){
var newValue = $(this).val().replace(/[^\w]/gi, '')
$(this).text(newValue);
});
答案 4 :(得分:0)
如果你想在没有id的情况下定位输入字段,你可以使用它:
$(function(){
$('input[name="appShortName"]').keyup(function(){
var newValue = $(this).val().replace(/[^\w]/gi, '')
$(this).val(newValue);
});
});
jsfiddle:http://jsfiddle.net/x65St/