如何将参数传递给 ajax 调用

本文关键字:ajax 调用 参数传递 | 更新日期: 2023-09-27 18:36:13

我有一个名为MyTest的javascript类.js,现在我在MyWebPage.cs的加载中注册了这个脚本,但是我需要将3个参数传递给函数,然后它将调用Web服务。这是我的JavaScript函数

MyTest.init = function() {
    var params = new Hash();
    params.set("blank", "blank");
    new Ajax.Request('/Test.asmx/CreateClients', {
        method: 'post',
        onSuccess: attachCallback(this, "Yay"),
        onFailure: attachCallback(this, "Nay"),
        onException: attachCallback(this, "Nay"),
        parameters: params
    });
}

现在我需要传递的参数是两个刺痛,名称和注释,我可以在.cs文件的加载中获得它们。如何将值传递给此初始化函数?

谢谢

如何将参数传递给 ajax 调用

使用数据属性:

MyTest.init = function() {
    var params = new Hash();
    params.set("blank", "blank");
    new Ajax.Request('/Test.asmx/CreateClients', {
        method: 'post',
        data: {Name:"name", Notes:"Notes"},
        onSuccess: attachCallback(this, "Yay"),
        onFailure: attachCallback(this, "Nay"),
        onException: attachCallback(this, "Nay"),
        parameters: params
    });
}

在我看来,你使用的是Prototype,而不是jQuery,但我不确定。如果是,你只需要用你的名称和注释属性填充你的 Ajax.Request 的 parameters 对象。

MyTest.init = function(name, note) {
    var params = new Hash();
    params.set("blank", "blank");
    params.set("name", name);
    params.set("note", note);
    new Ajax.Request('/Test.asmx/CreateClients', {
        method: 'post',
        onSuccess: attachCallback(this, "Yay"),
        onFailure: attachCallback(this, "Nay"),
        onException: attachCallback(this, "Nay"),
        parameters: params
    });
}
你可以

试试,在服务器端写出来

<script type="text/javascript">
 var param1 = '<%= dotNetValue %>';
 var param2 = '<%= otherDotNetValue %>';
</script>

然后在客户端上,您将可以访问这些(全局)变量

params.Set("first", param1);
params.Set("second", param2);