1С-Битрикс Управление сайтом: работа с javascript библиотекой BX

06.11.2019

Подключение javascript библиотеки:

\CJSCore::init("jquery");

\CJSCore::RegisterExt("my_lib", array(
    "js" => "/bitrix/js/mymodule/mylib/mylib.js",
    "css" => "/bitrix/js/mymodule/mylib/css/mylib.css",
    "rel" => array("color_picker"),
));


Проверка на непустую строку 

BX.type.isNotEmptyString(str);

Очистка контента узла:

BX.cleanNode(Node);

Добавить класс узлу

BX.addClass(node, 'class');

Удалить класс у узла
BX.removeClass(node, 'class');

Вставить содержимое в узел:

BX.adjust(BX('id'), {html: '<span>текст</span>'});

Подготовить данные формы:

BX.ajax.prepareForm(form); - не отправляет файл.

для форм с полем файл лучше использовать объект BX.ajax.FormData()

let form = document.forms['form-id'];
let formData = new FormData(form);
let bxFormData = new BX.ajax.FormData();

for(let [name, value] of formData){
bxFormData.append(name, value);
}

bxFormData.send(
'ajax.php',
function(data){
console.log(data);

},
null,
function(error){
window.alert(error);
}
);

Добавить обработчик события аяксовой загрузки:

BX.addCustomEvent('onAjaxSuccess',function () {

});

Аякс отправка данных:

items

BX.ajax({
url:'ajax.php',
method: 'POST',
dataType: 'json',
data:{'action':'ADD','items':items,'POLE':val},
onsuccess: function(res){
console.log(res);
 },
});

Создание узла:

BX.create('IMG', {props: {src:  '/images/loader.gif'}});

Обход всех элементов по селектору класса, аналог jquery each:

var items=BX.findChild(BX("ID"),{class: 'classname'}, true, true);

items.forEach(function(element){
      console.log(element);
});

Возврат к списку


Материалы по теме: