Thực thi AJAX Javascript trong giao diện mặc định

Cập nhật lần cuối vào

Đoạn code bên dưới sẽ giới thiệu cho bạn cách thực thi AJAX khi sử dụng giao diện được thực hiện bởi HocWP Team. Phiên bản cập nhật ngày 26 tháng 11 năm 2019.

body.trigger("hocwpTheme:ajaxStart", [element]);

$.ajax({
    type: "POST",
    dataType: "JSON",
    url: hocwpTheme.ajaxUrl,
    cache: true,
    data: {
        action: "hocwp_theme_ajax",
        callback: "update_meta",
        method: "post",
        meta_type: meta_type,
        meta_key: meta_key,
        meta_value: meta_value,
        object_id: object_id,
        value_type: value_type,
        change_id: element.attr("data-object-id"),
        change_value: change_value,
        nonce: hocwpTheme.nonce
    },
    success: function (response) {
        if (response.success) {
            if (response.data && response.data.meta_value) {
                meta_value = response.data.meta_value;

                element.attr("data-meta-value", meta_value);
            }

            var container = element.parent(),
                displayResult = container.find(element.attr("data-display-result"));

            if (displayResult.length && response.data && response.data.formatted_meta_value) {
                displayResult.html(response.data.formatted_meta_value);
            }

            if ("up_down" === value_type) {
                element.addClass("disabled");
                element.prop("disabled", true);
            }

            var doText = element.attr("data-text"),
                undoText = element.attr("data-undo-text");

            if (response.data && response.data.job_action && "undo" == response.data.job_action && $.trim(doText)) {
                element.html(doText);
            } else if (response.data && response.data.job_action && "do" == response.data.job_action && $.trim(undoText)) {
                element.html(undoText);
            }
        }

        element.trigger("hocwpUpdateMeta:ajaxSuccess", [element, response]);

        if (response.data && response.data.message && $.trim(response.data.message)) {
            alert(response.data.message);
        }
    },
    complete: function (response) {
        body.trigger("hocwpTheme:ajaxComplete", [element, response]);
        element.blur();
    }
});
Theo dõi
Thông báo của
guest

0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận