jquery - 如何使用通过模型列表发送的数据在 javascript 中填充数组

标签 jquery asp.net-mvc-3 razor

我的模型中有一个列表 EmployeeList

在我看来,我想从 EmployeeList(来自模型)填充一个数组,并将其用作标签的自动完成功能。似乎该数组没有从列表中填充,自动完成功能也不起作用。请帮忙。

View中的代码如下:

 <title>jQuery Autocomplete example</title>
<script type="text/javascript" src="../../scripts/jquery-1.2.6.js"></script>
<script type="text/javascript" src="../../scripts/jquery.autocomplete.js"></script>

<!-- Listing 14.3 -->
<script type="text/javascript">
    $(document).ready(function() {

    var employeeList = '@Model.EmployeeLis.toArray();'


        $("#tags").autocomplete({
            source: employeeList

        });
    });
</script>

 <h1>Type your name here</h1>
<%= Html.TextBox("tags") %>

最佳答案

您可以使用JavaScriptSerializer类将生成模型数组的 JSON 表示形式:

@using System.Web.Script.Serialization
<title>jQuery Autocomplete example</title>
<script type="text/javascript" src="@Url.Content("~/scripts/jquery-1.2.6.js")"></script>
<script type="text/javascript" src="@Url.Content("~/scripts/jquery.autocomplete.js")"></script>
<!-- Listing 14.3 -->
<script type="text/javascript">
    $(function() {
        var employeeList = @Html.Raw(new JavaScriptSerializer().Serialize(Model.EmployeeList));
        $('#tags').autocomplete({
            source: employeeList
        });
    });
</script>

另请注意我在脚本包含中使用 Url.Content 帮助程序的方式,以避免硬编码 URL,这在部署应用程序时可能不起作用。

关于jquery - 如何使用通过模型列表发送的数据在 javascript 中填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5375974/

相关文章:

c# - 多选过滤 ASP.Net MVC 中的分页 View

Javascript字符计数器,将回车符计为2个字符

c# - 对象引用未设置为文件上传系统的对象实例

javascript - Jquery 文件 uploader blueimp,意外的 token /字符

javascript - 删除切换类

javascript - 如何制作像地铁一样的水平滚动?

javascript - 从 html 查询中删除 </tr>

asp.net-mvc - MVC 3 Ajax.ActionLink 不起作用

jquery - 如何在验证事件上显示弹出窗口?

asp.net-mvc-3 - 如何在 orderby 子句中使用动态变量