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

#inputappShortNameの代わりに使用#appShortName

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

このフィドルをチェックしてください

于 2013-11-07T08:32:17.470 に答える
1

val()ゲッターとして、およびval('value')セッターとして使用する必要があります。これを試して:

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

また、idHTML の属性と jQuery セレクターが一致しません。これはタイプミスですか?

于 2013-11-07T08:30:00.763 に答える
1

このようなものを試してください、短いバージョン

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

あなたはこのコードを試しました。

$('#inputappShortName').keyup(function(){
    var newValue = $(this).val().replace(/[^\w]/gi, '')
    $(this).text(newValue);
});
于 2013-11-07T08:45:59.510 に答える
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 に答える