2013-09-05 2 views
0

У меня есть проблема, чтобы захватить класс для моего поля адреса. Я хочу остановить ключ ввода (char [13]) от отправки формы, которую я, казалось, сделал. Но в качестве исключения для текстовых блоков, в этом случае для поля адреса, я хочу разрешить следующую строку.JQuery - Char (13) - New line/stop submit issue

Проблема в том, что если я запустил этот код, 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.'); 
    } 
}); 
+0

Дубликат: http://stackoverflow.com/questions/1563062/ prevent-form-submission-with-enter-key – melancia

+0

@MelanciaUK. Но я не понимаю, почему в консоли обнаруженный класс «неопределен». Вот где я застрял. – morne

+0

Откуда появился товар? Я не вижу, чтобы это было указано в коде. – melancia

ответ

1

item.attr('class') не определено причина "item" не определена. Вместо attr() пытаются использовать

if (item.hasClass('addressClass')) 

и до этого попытаться определить

var item = $(event.target); 

или связать нажатие событие для текстовых входов

+0

Спасибо. Работала красиво. Извините, но я немного новичок в JQuery и не заметил, что элемент не определен. – morne