0

住所フィールドのクラスを取得する際に問題があります。エンターキー (char[13]) がフォームを送信するのを止めたいのですが、これは行ったようです。ただし、テキスト ブロック (この場合は住所フィールド) の例外として、次の行を許可したいと考えています。

問題は、このコードを実行すると、コンソールのmyClassが未定義であると言われることです。クラス名を取得できれば、そのオブジェクトの「次の行」を許可するという次のステップを実行できます。

私は正しい道を進んでいますか?その場合、誰かが私を案内してください。または、解決策がまったく異なる場合は、その方法を教えてください。

$(window).keypress(function(event){
    var myClass = item.attr('class');
    if(myClass == 'addressClass'){
        if(keycode == '13') {
            /* Code for NextLine */
            event.preventDefault();
            console.debug('New Line and Prevent Submit.');
        }
        console.debug(myClass);
    }

    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13') {
        event.preventDefault();
        console.debug('Prevent Submit.');
    }
});
4

1 に答える 1

1

item.attr('class')is undefined 原因 "item" が未定義です。attr() 使おうとするのではなく

if (item.hasClass('addressClass'))

そしてその前に定義しよう

var item = $(event.target);

またはキープレスイベントをテキスト入力にバインドします

于 2013-09-05T10:03:41.460 に答える