如何在剃刀模型中的列表中获取特定项目

Ger*_*ans 5 javascript jquery slider razor

在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>
Run Code Online (Sandbox Code Playgroud)

在这一行中无法获得ui.value:

alert("@Model.UsageList[ui.value].UseDescription");
Run Code Online (Sandbox Code Playgroud)

如果我传入一个数字(1表示例子)而不是ui.value,那么工作正常.但我需要获得具体的列表对象.

非常感谢任何帮助.

Car*_*z T 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>
Run Code Online (Sandbox Code Playgroud)