Итак, я видел несколько сообщений, объясняющих, как использовать переменную в значении для выбора атрибута. то есть (где событие JS относится к DIV (что делает его $ (это):JQuery [attribute] Селекторы
HTML
<div id="item1"></div>
<div id="item1" style="display: none;"></div>
JS
var find = $(this).attr("id")
$('div[id="'+find+'"]').show();
Но я хотел бы знать, как используйте переменную в селекторе jquery, чтобы найти что-то с подобной строкой для значения переменной, т. е. найти элемент из приведенного выше примера, но ищет «# item1div», где цель события все еще «#ite m1"
HTML
<div id="item1"></div>
<div id="item1div" style="display: none;"></div>
JS
var find = $(this).attr("id")
$('div[id="'+find+"div"'"]').show(); // incorrect syntax
Так что мой вопрос: Как я могу исправить выше синтаксис, чтобы включить дополнительную строку в атрибут проверки?
Я не могу найти ссылки на правильный синтаксис того, как добавить компиляцию строки значения переменной и явной строки, а затем проверить это как значение для атрибута x.
Я знаю, что здесь я могу использовать [id*="'+find+'"]
, потому что альтернативный идентификатор содержит те же символы, что и основной, но я хочу знать, как настроить целевой идентификатор другого на основе первого. Например, если бы я был # item1, # item1div и # item1img, как я могу использовать событие на "# item1", чтобы найти значение атрибута равно "item1div" и/или "item1img"
EDIT: I также просто понял, что могу просто использовать [id|="'+find+'"]
, если я называю divs соответственно дефисом, но опять же не решает идентификаторы с разными окончаниями (или разными строками, которые появляются после дефиса)
Вы должны использовать ID selector '$ ('#' + find) .show()' вместо '$ ('. Divs [id ="' + find + '"]'). show();'. Таким образом, вы можете использовать '$ ('#' + find + 'div')', чтобы найти '# item1div' или что-то динамическое в первой части. Примечание: неверное вы упомянули из-за отсутствующего '+' - оно должно быть '$ ('div [id ="' + find + "div" ** + ** '"]'). Show();' –
вопрос очень неясен. Что ты пытаешься сделать? выполнить поиск по шаблону? – taesu
вот некоторые идеи: http://stackoverflow.com/questions/13541898/how-can-i-select-an-element-by-id-with-jquery-using-regex http: // stackoverflow .com/questions/190253/jquery-selector-regular-expressions – eaCe