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");

如果我传入一个数字(例如 1)而不是 ui.value,则一切正常。但我需要获取特定的列表对象。

非常感谢任何帮助。

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 回答