Как я могу ответить на любой выход (размытие) входного текстового элемента, который содержит указанную строку в своем идентификаторе?

Я хочу обновить элемент ввода текста, когда выход из какой-либо определенной категории (на основе идентификатора) других элементов ввода текста. В частности, когда любой из следующих элементов ввода текста:

boxAmount1
boxAmount2
boxAmount3
boxAmount4
boxAmount5

... закрыты / размыты, я хочу обновить элемент ввода текста, который имеет "boxGrandTotal" в его ID.

Я думал, что "содержит" поможет мне, поэтому попробовал это:

$(document).on("blur", '[id:contains('boxAmount')]', function (e) {
    $('[id$=boxGrandTotal]').text([combined values of all "boxAmount" input texts]);
});

... но JSHint сообщает мне "Отсутствует имя в объявлении функции" в первой строке и "Ожидал присваивания или вызова функции и вместо этого увидел выражение" в третьей и последней строке.

Что мне нужно сделать, чтобы ответить на все пятна "boxAmount"?

ПРИМЕЧАНИЕ: я использую джаз "id$=", потому что идентификаторы, которые я даю элементам (таким как "boxGrandTotal"), в конечном итоге искажаются Sharepoint, который добавляет к идентификаторам кучу гоблидов.

1 ответ

Решение

Использовать атрибут начинается с или содержит селектор

$(document).on("blur", '[id^="boxAmount"]', function (e) {

});

или же

$(document).on("blur", '[id*="boxAmount"]', function (e) {

});
Другие вопросы по тегам