将对象列表c传递给javascript时出错:未定义变量

将对象列表c传递给javascript时出错:未定义变量,javascript,c#,jquery,ajax,Javascript,C#,Jquery,Ajax,我想用预测做搜索。我通过AJAX将对象列表作为JSON发送到Javascript 我有一个类,它是课程名称和本地主机的链接: public class SearchQ { string name; string link; public SearchQ(string a, string b) { this.name = a; this.link = b; } public SearchQ() { } } 我

我想用预测做搜索。我通过AJAX将对象列表作为JSON发送到Javascript

我有一个类,它是课程名称和本地主机的链接:

 public class SearchQ
{
    string name;
    string link;


    public SearchQ(string a, string b)
    {
        this.name = a;
        this.link = b;

    }
    public SearchQ() { }
}
我在控制器中的搜索功能是:

public ActionResult SearchC(string keyword)
    {
        List<SearchQ> sq = new List<SearchQ>();
        var myItems = from u in cat.Courses select u;
        if (!String.IsNullOrEmpty(keyword))
        {
            myItems = myItems.Where(c => c.Name.Contains(keyword));


            foreach (var item in myItems)
            {
                string x= "/CourseProf/"+item.C_id;
                SearchQ s = new SearchQ(item.Name,x);
                sq.Add(s);


            }
            return Json(sq.ToList(), JsonRequestBehavior.AllowGet); 
        }
        else
            return Json(new List<string>(), JsonRequestBehavior.AllowGet); 
    }
我的Javascript:

var quickSearch=函数{ var searchstring=$search-bar.val; var响应;/@*'@model.Url'*@ $.ajax{ 类型:GET, 数据:{关键字:searchstring}, url:/Home/SearchC, 数据类型:json, success:success_func, 错误:console.logAjaxError }; $'output'.html; }; var success_func=函数数据{ strInArraystr,strArray函数{ 对于变量i=0;i当我运行它时,$str1和$str2的值是未定义的!如何解决此问题?

Csharp类SearchQ的成员不是公共的。

Csharp类SearchQ的成员不是公共的。

您是否已验证没有在控制器中使用else子句?听起来你并没有实际返回你认为返回的数据。你需要监视json传输。。。F12/谷歌浏览器上的网络。它应该可以帮助您解决问题,如果没有,您可以将其复制/粘贴到此处。不,我可以通过调试查看返回列表!我在Network/response[{},{}]中看到,请删除与您的问题无关的代码。此外,您似乎正在进行一些奇怪的事件处理程序嵌套。您是否验证了没有在控制器中使用else子句?听起来你并没有实际返回你认为返回的数据。你需要监视json传输。。。F12/谷歌浏览器上的网络。它应该可以帮助您解决问题,如果没有,您可以将其复制/粘贴到此处。不,我可以通过调试查看返回列表!我在Network/response[{},{}]中看到,请删除与您的问题无关的代码。此外,您似乎有一些奇怪的事件处理程序嵌套,因此,这些属性无法序列化。这就是为什么您发现了两个对象,但它们是空的。因此,这些属性无法序列化。这就是为什么你发现了两个物体,但它们是空的。