可以根据状态变化抓取数据的 ajax 函数示例是什么?

问题描述 投票:0回答:1

我正在尝试编写一个ajax函数,该函数从控制器获取post端点并根据用户在页面上选择的状态打印出数据(文本)。

$( "#state" ).on( "change", function() {
        var stateID = $( "#state" ).val();
        var url = "/s/QD-CIT/Registration-Consent";
        event.preventDefault();
        $.ajax({
            url: url,
            type: 'post',
            dataType: 'json',
            data: stateID,
            success: function (data) {
               alert(1);//Get cosent text from response  
            },
            error: function (err) {
                alert(2);
            }
        });

我不确定条件是什么以及如何根据状态变化打印出文本

我希望从控制器的后端点接收数据并根据用户选择的状态打印出数据。

javascript ajax controller salesforce salesforce-commerce-cloud
1个回答
0
投票
$( "#state" ).on( "change", function() {
    var stateID = $( "#state" ).val();
    var url = "/s/QD-CIT/Registration-Consent";
    
    // Create a data object to send to the server
    var requestData = {
        stateID: stateID 
    };

    $.ajax({
        url: url,
        type: 'POST', 
        dataType: 'json',
        data: requestData, // Send the data as an object
        success: function (data) {
       
            var consentText = data.consentText;
           
            alert(consentText);
        },
        error: function (err) {
            alert("Error: " + err.responseText);
        }
    });
});

我创建了一个名为 requestData 的对象,它保存我们想要发送到服务器的 stateID 参数。我将请求类型更改为“POST”(大写),以告诉服务器我们正在向其发送一些数据。 在 success 函数中,假设服务器将向我们发送一种称为 JSON 的特殊消息,并且在该消息中,将有一个称为consentText 的内容。然后在弹出框中(如警报)向用户显示此同意文本。您可以更改此部分以使用同意文本更新您的网页,而不是显示弹出窗口。最后,确保我们在 /s/QD-CIT/Registration-Consent 处与之通信的服务器知道如何处理我们的 POST 请求并发送回正确类型的 JSON 消息,其中包含同意文本。

© www.soinside.com 2019 - 2024. All rights reserved.