0

私はasp.netmvc3.を1つのページで使用しています。リストオブジェクトから文字列のリストを取得する必要があります。だから私はこれをします:

@{
    var orderIds  = from s in Model.Orders
                    select s.id;

}

そして、私のajax呼び出しの1つから、「orderIds」が必要になります

$("#renderBtn").click(function () {
            var inputData = {
                'orderIds':  need to get the order ids here 
            }; 

            $.ajax({
                url: '/Order/ExtraData',
                data: inputData,
                type: 'POST',
                contentType: 'application/json; charset=utf-8',
                dataType: 'json',
                success: function (result) {
                    ....
                },
                error: function () {
                    ...
                }
            });
        });

orderIdsを取得してJavaScriptで使用するにはどうすればよいですか?ありがとう

4

2 に答える 2

2

定義するコードorderIdsはサーバー側の変数です。クライアント側の変数が必要なもの。scriptビューの作成時に、ページの下部近くのブロックでその変数を定義する必要があります。

@{ 
  var orderIds = string.Join(",", Model.Orders.Select(s => s.id).ToArray());
}
<script>
       var orderIds  = [@orderIds]
</script>

警告:コードは完全ではない可能性があり、コンパイルされない可能性がありますが、それはあなたにどのように進めるかについての考えを与えるはずです。

于 2012-06-17T00:56:19.843 に答える
1

インラインJavaScriptを使用していない(または使用したくない)場合は、すべてを分離しておくと、次のようになります。

@{ 
  var orderIds = string.Join(",", Model.Orders.Select(s => s.id).ToArray());
}

<input type="hidden" id="orderIds" value="@orderIds" />

そして、javascript / jQueryで:

orderIds = $('#orderIds').val();
于 2012-06-17T03:32:43.200 に答える