asp.net razor 和 jQuery 自动完成插件
Posted
技术标签:
【中文标题】asp.net razor 和 jQuery 自动完成插件【英文标题】:asp.net razor and jQuery autocomplete plugin 【发布时间】:2017-09-09 22:09:07 【问题描述】:嘿,我想自动完成这个 html 文本输入:
$("#Supplier").autocomplete(
source: availableTags
);
并且我有从控制器到视图的字符串数组:
@ViewBag.VendorsArray
我可以这样使用它:
var availableTags = @ViewBag.VendorsArray;
并且在自动完成插件的“源”选项中使用? 它对我不起作用。 就像我这样手动排列:
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC"
];
然后,它的工作。
【问题讨论】:
【参考方案1】:首先将逗号分隔的字符串传递给您的 ViewBag 对象,然后设置为 javascript 变量,然后将变量转换为 javascript 数组。
请举例说明:
@ViewBag.VendorsArray = "ActionScript,AppleScript,Asp,BASIC";
<script>
var list = "@ViewBag.VendorsArray";
var availableTags = list.split(',');
$("#Supplier").autocomplete(
source: availableTags
);
</script>
【讨论】:
我不需要逗号分隔的字符串来传递自动完成插件,我需要字符串数组。 如果您无法将字符串数组转换为 c# 字符串,则无法将其发送到 savascript。我用了两年多的时间。 基本上你不能将 C# 对象发送到 javascript。但是在 .cshtml 中,当页面呈现时,它会以字符串的形式发送到 HTTP 响应流。所以javascript数组就像一个没有括号的逗号分隔字符串,因此这种技术是可行的。以上是关于asp.net razor 和 jQuery 自动完成插件的主要内容,如果未能解决你的问题,请参考以下文章
如何将 JQuery Datatable.net 与 ASP.Net 4 Razor 和 Twitter Bootstrap 一起使用
ASP.net MVC Core Razor 页面和 Ajax JQuery
ASP.net MVC 3 Razor - jQuery Intellisense
用于 jQuery Mobile 控件的 Asp.Net MVC Razor 标记