は、以下のコードを参照してください:あなたは上記を参照できるように、私は、グローバル変数はタプルのリスト、<string, string>
を含むpropertyList
と呼ばれていの取り込みグローバル変数
@{
var propertyList = new List<Tuple<string, string>>();
}
<input type="text" data-id="@item.Item1" class="form-control prop"/>
<a class="btn btn-default" id="run-report" href="@Url.Action("RunReport", "Reports", new {reportId = Model.ReportId, propList = propertyList})"> Run Report</a>
<script>
$("#run-report").click(function() {
$(".prop").each(function() {
var currentProp = $(this).attr("data-id");
var currentPropVal = (this).value;
@{
propertyList.Add(new Tuple<string, string>("", ""));
}
});
});
</script>
。
Url.Action
を使用してコントローラのアクションからブラウザに直接レポートをダウンロードする必要があるため、ここでこれを宣言します。
私はテキストボックスから値を取得するときに少し壁に当たっています。自分のjQueryの値をグローバルなタプルリストに追加する必要があります。
私はこのようにはできません。
アドバイスをいただければ幸いです!
おかげ
クライアント側とサーバー側のコードが混在しています。サーバー側のコード '@ {}'は、ブラウザに到達する前に実行され、その時刻以降は変更できません。 –
Razorが最初にコンパイルしたことを考慮に入れて、サーバーでjQueryがブラウザで実行されます... –