-3

こんにちは、すべてを Java スクリプトで動的に作成した後、特定の 1 つの値を C# コードに移動したいのですが、すべてが必要なわけではありません.どの変数に移動したいのかをコードに書きました。私のC#コード。

<script>      
    var test="i want this variable into my c#";
    var only for javascript="i don't want this to be travel when i click on submit button";

    var s = document.createElement("input"); //input element, Submit button
    s.setAttribute('type', "submit");
    s.setAttribute('value', "submit");
</script>
4

1 に答える 1

0

クライアント変数を「C# に」取得するには、C# が実行されているサーバーへの要求の一部にする必要があります。これは、URL に追加するのと同じくらい簡単にすることも、新しいフィールドを作成することも、既存のフィールドに入力して送信することもできます。

// a variable
var test = "a value to be sent to the server";

// put the value into a hidden field
document.getElementById("hdnValue").value = test;

// submit the form containing the hidden field
document.getElementById("form1").submit();

ここでは c# について話しているので、サーバーは Web フォームまたは MVC のいずれかの ASP.Net であると想定します。MVC の場合、対応するパラメーターを取るコントローラー メソッドがあることを確認します。Web フォームの場合、 を含めることができます<input type="hidden" runat="server" clientidmode="static" id="hdnValue" />。ページは、コード ビハインドでこの値にアクセスできます。

特定の 1 つの値を C# コードに移動したい ... すべてが必要なわけではない

単一の値をサーバーに送信する別の (そしておそらくより洗練された) 方法は、AJAX を使用して非同期的に値を POST することです。これを簡単にするためにjQueryを使用することをお勧めしますが、プレーンな JavaScript でも実行できます。

AJAX 投稿の jQuery の例を次に示します。

$.ajax({
    url: "http://yourserverurl/",
    type: "POST",
    data: { test: "a value to be sent to the server" },
    success: function(data){
        // an optional javascript function to call when the operation completes successfully
    }
});
于 2012-09-08T01:36:06.323 に答える