Ответ 1
row = $("body").find('#' + row_id);
Более важно сделать дополнительный body.find не влияет на производительность. Правильный способ сделать это просто:
row = $('#' + row_id);
Например, следующее выбирает деление с id = "2":
row = $("body").find("#2");
Как мне сделать что-то вроде этого:
row_id = 5;
row = $("body").find(row_id);
Вышеприведенный синтаксис вызывает ошибку. Я проверил документацию jQuery и ответил здесь без успеха.
row = $("body").find('#' + row_id);
Более важно сделать дополнительный body.find не влияет на производительность. Правильный способ сделать это просто:
row = $('#' + row_id);
Самый короткий путь:
$("#" + row_id)
Ограничение поиска в теле не имеет никакой пользы.
Кроме того, вам следует рассмотреть возможность переименования вашего id
в нечто более значимое (и совместимое с HTML в соответствии с ответом Паоло), особенно если у вас есть другой набор данных, которые также должны быть названы.
Выполнение $('body').find();
не требуется при поиске по ID; нет увеличения производительности.
Также обратите внимание, что наличие идентификатора, начинающегося с номера, недействительный HTML:
Идентификаторы ID и NAME должны начинаться с буквы ([A-Za-z]), за которой может следовать любое количество букв, цифр ([0-9]), дефис ( "-" ), подчеркивание ( "_" ), двоеточие ( ":" ) и периоды ( "." ).
Вы можете сделать это следующим образом:
row_id = 5;
row = $("body").find('#'+row_id);
В вашем коде есть две проблемы.
Я не знаю много о jQuery, но попробуйте следующее:
row_id = "#5";
row = $("body").find(row_id);
Изменить: Конечно, если переменная является числом, вы должны добавить "#"
в начало:
row_id = 5
row = $("body").find("#"+row_id);
как вы можете добавить, например, переменную X в .cam_select?
Я пробовал это
var email = $('.cam_select'+x , 'option:selected').attr('email');
но я получаю неопределенный на электронную почту вар