#jquery #jquery-selectors
#jquery #jquery-селекторы
Вопрос:
В настоящее время в моем коде есть что-то подобное
<input class="parameterValueInput" trigger="@item.Name">
Что я хотел бы сделать, так это изменить содержимое ввода, который имеет имя класса parameterValueInput
и атрибут, вызываемый trigger
со значением «Значение триггера»;
Я не уверен, как написать селектор для этого. есть предложения?
Ответ №1:
Вы можете попробовать так :
$("input[class=parameterValueInput][trigger=triggerValue]").focus()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<input class="parameterValueInput" trigger="triggerValdue">
<input class="parameterValueInput" trigger="triggerValu2e">
<input class="parameterValueInput" trigger="triggerValue">
Как, @mplungjan сказал в комментарии, чтобы использовать $("input.parameterValueInput[trigger=triggerValue]")
, если у вас есть mutliple класс else, если только один класс использует выше.
Комментарии:
1.
$("input.parameterValueInput[trigger=triggerValue]")
вероятно, более безопасно2. Ваш селектор завершится ошибкой при
<input class="parameter parameterValueInput"
3. @mplungjan да, вы правы 🙂 Спасибо за предложение. Я добавил ваше предложение в свой ответ.
4. ВСЕГДА используйте .class, ДАЖЕ если у вас есть один класс, поскольку добавление класса и разрыв скрипта занимает всего секунду. Это может быть добавлено даже из другой части скрипта, поэтому НИКОГДА не используйте class=SomeClass поверх .SomeClass