Преобразование списка в массив сценариев Java с использованием c #

0

Я использую функцию автозавершения jQuery, в которой значение должно храниться в массиве java-скриптов. Я создал функцию, которая дает список с объектами, которые содержат user_id и user_name. Как преобразовать его в массив.

public class DocModel
{
    [Required]
    public String dr_name { get; set; }
    [Required]
    public int dr_id { get; set; }
    public List<DocModel> GetUser()
    {
        SqlDataReader sdr = DataAccess.DataAccess.getAllDoctorNames();
        List<AECS1.Models.DocModel> DocList = new List<Models.DocModel>();
        Models.DocModel Doc;
        if (sdr.HasRows)
        {
            while (sdr.Read())
            {
                Doc = new Models.DocModel();
                Doc.dr_id = (int)sdr["dr_id"];
                Doc.dr_name = (string)sdr["dr_name"];
                DocList.Add(Doc);
            }
        }
        return DocList;

    }
}

Это страница просмотра:

$(function () {
    var docdata = [];


    $("#tags").autocomplete({
        source: docdata
    });
});

Как заполнить этот массив docdata?

  • 0
    вы можете вернуть JSON из DocList, на самом деле вы должны это сделать, так как данные будут использоваться в автозаполнении
Теги:
razor
asp.net-mvc

2 ответа

1
Лучший ответ

Добавьте метод к вашей модели под названием ToJSON & используйте конвертер JavaScript - либо встроенный, либо даже лучше, JSON.net, и этот метод возвращает строку, закодированную json, представляющую ваш массив.

<script>
    var docdata = @Model.ToJson();
</script>

Если вам не нравится иметь метод в вашей модели, выполните преобразование JSON при заполнении вашей модели.

0

Пропустить DocModels для просмотра в качестве модели.

@model IEnumerable<DocModel>

А потом

<script>
    var docdata = [
    @foreach(var item in Model)
    {
        @: '@item.dr_name',
    }
    ];
</script>
  • 0
    Это проблематично. Вы избегаете только HTML, а не JavaScript. Применяются разные правила.
  • 0
    Да. Получаю желаемый результат с этим. Но как бы я установить значения для элементов списка?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню