Мне нужно изменить имя класса CSS всех элементов на странице с определенным именем класса (.k-textbox). Я попробовал код ниже, но не попал внутрь функции.each()
<script>
$(document).ready(function () {
$(".k-textbox").each(function () {
//alert("a");
$(this).removeClass("k-textbox");
$(this).addClass("input-medium");
});
});
</script>
На странице у меня есть стороннее управление сеткой. класс CSS, о котором я упоминал, находится внутри этого элемента управления сетью третьей стороны.
ниже находится объект DOM:
Вы должны попытаться использовать API цепочки, предоставляемый библиотекой jQuery:
$(".k-textbox").removeClass("k-textbox").addClass("input-medium");
редактировать:
Пока элементы создаются динамически, вы можете попытаться запустить этот код после создания этих элементов. Но если вы не знаете, когда они вставлены в код и не имеют контроля над ними, вы можете попробовать написать простую функцию watch
, то есть:
var watchTimer = setInterval(function () {
var inputs = $('.k-textbox');
if (inputs.length) {
// clear interval
clearInterval(watchTimer);
// change class
inputs.removeClass("k-textbox").addClass("input-medium");
}
}, 100);
используйте addClass() и removeClass()
$(".k-textbox").removeClass("k-textbox").addClass("input-medium");