5

Razor のビューでは、Name プロパティと UseDescription プロパティを持つオブジェクトのリスト ('usageList') を含むモデルを渡しています。

JQuery でスライダーを作成しました。スライダーの値を変更すると、特定の UseDescription が表示されます。

問題は、モデル内のリストにある特定のオブジェクトを取得することです。私はこのコード(JQuery)を持っています:

<script type="text/javascript">
    $(document).ready(function() {
        $("#slider").slider({
            min:1,
            max:3,
            value:1,
            range:"min",
            change: function(event,ui){
                var number = ui.value;
                alert("@Model.UsageList[ui.value].UseDescription");

            }
        });
    });
</script>

この行で ui.value を取得することはできません:

alert("@Model.UsageList[ui.value].UseDescription");

ui.value の代わりに数値 (たとえば 1) を渡すと、問題なく動作します。しかし、特定のリスト オブジェクトを取得する必要があります。

どんな助けでも大歓迎です。

4

1 に答える 1

1

JavaScript を使用してリストをクライアント側にダウンロードする必要があります。次に、インデックスでアイテムを取得できます。このようなもの:

<script type="text/javascript">
        $(document).ready(function() {
            var usageList = []
            @foreach (var item in Model.UsageList)
            {
                <text>usageList.push('@item.UseDescription');</text>
            }

            }
            $("#slider").slider({
                min:1,
                max:3,
                value:1,
                range:"min",
                change: function(event,ui){
                    var number = ui.value;
                    alert(usageList[ui.value - 1]);

                }
            });
        });
    </script>
于 2012-10-25T14:17:39.883 に答える