Вот рабочий пример, основанный на том, что было упомянуто в комментариях:
function loadDocs() {
var element = document.querySelectorAll("[data-elementor-id]")[0];
var testId = element.dataset.elementorId;
var URL =
"https://hook.integromat.com/h17qasnzptr4lo7cs6br1vmrv28t11ji";
var http = new XMLHttpRequest();
var params = "url=" + testId;
http.open("POST", URL, true);
http.setRequestHeader(
"Content-Type",
"application/x-www-form-urlencoded"
);
http.onreadystatechange = function() {
if (http.readyState == 4 && http.status == 200) {
console.log("success!");
}
};
http.send(params);
}
<h2>Postback to webhook incl PostID</h2>
<button type="button" onclick="loadDocs()">Postback</button>
<!-- This can be any element, but let's assume it's a DIV-->
<div data-elementor-id="228">
<h2>228</h2>
</div>
Как вы можете видеть, у меня есть элемент (в данном случае div
), который имеет атрибут data-elementor-id
, который содержит testId
, который вы хотите на POST
на ваш Webhook.
Я беру этот элемент с помощью document.querySelectorAll("[data-elementor-id]")[0]
и извлекаю ID
с помощью element.dataset.elementorId
, который затем использую для запроса POST
с помощью конкатенации строк - "url=" + testId
.
Обратите внимание, что document.querySelectorAll
возвращает массив - в моем случае на странице есть только один элемент с атрибутом data-elementor-id
, поэтому я выбрал первый, поэтому [0]
. Если на вашей странице было больше элементов с одним и тем же атрибутом, а первый элемент не был элементом с соответствующим идентификатором, убедитесь, что вы указали правильный индекс, например [2]
.
Надеюсь, это поможет.