2

MyTest.js という JavaScript クラスがあり、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 ファイルの読み込みで取得できる名前とメモの 2 つの文字列です。この init 関数に値を渡すにはどうすればよいですか?

ありがとうございました

4

3 に答える 3

2

データ プロパティを使用します。

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
    });
}
于 2012-06-01T18:10:21.947 に答える
0

jQueryではなくPrototypeを使用しているように見えますが、よくわかりません。その場合は、Ajax.Request のparametersオブジェクトに name プロパティと no​​te プロパティを設定するだけです。

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
    });
}
于 2012-06-01T18:15:26.170 に答える
0

サーバー側で書き出すことができます

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

次に、クライアントでそれらの(グローバル)変数にアクセスできます

params.Set("first", param1);
params.Set("second", param2);
于 2012-06-01T18:15:45.907 に答える