1

我正在从数据库中获取对象列表

public class TestCode
{
    /// <summary>
    /// ProductID
    /// </summary>
    public int Id { get; set; } 
    public String CodeName { get; set; }
    public String ManName { get; set; }
    public String DOSName { get; set; }
}

我的控制器使用将它们转换为 json

 return Json(formattedCodes);

控制器由以下ajax调用

 $(document).ready(function () {
       $("#tags").autocomplete({
           source: function (request, response) {
               $.ajax(
               {
                   type: "POST",
                   url: '@Url.Action("GetAutoText3", "Code")',
                   dataType: "json",
                   data: { Code: $("#tags").val() },
                   success: function (data) {
                                               response($.map(data, function (c) {
                                                   alert(c.ManName);
                                                   return c
                                               }));
                   }
               })
           }
       })
   });

以前我返回了一个 json 字符串,上面的代码运行良好。它仍然可以正常工作,但输入框没有填充自动完成值,可能是由于现在返回对象和行“数据:{代码:$(“#tags”).val()}, " 可能不再有效。

“警报(c.ManName);” 返回正确的值,因此对象肯定存在并且正确。

我正在寻找一些将数据分配给 html 的“模型”方式,而不是将字符串连接在一起。

例如,自动完成将显示 ManName 和 CodeName 值,但不知何故我将 ID 存储在幕后,以便在选择自动完成项时可以使用它。

有任何想法吗?

谢谢

4

0 回答 0