powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / update Model
7 сообщений из 7, страница 1 из 1
update Model
    #39650660
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у Телерика убогий ListBox.

Нет возможности обновлять модель с помощью самого контрола.

У контрола есть 2 события Добавление и Удаление значений.

Решил отлавливая события обновлять саму модель. Пока не получается :( . Это возможно ?


Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
function onAdd(e) {

        e.preventDefault();

        var dataSource = e.sender.dataSource;

        var listBoxName = getListBoxName(e);

        if (listBoxName === "PositionsSelected") {

            for (var index = 0; index < e.dataItems.length; index++) {

                var dataItem = e.dataItems[index];

                @(Model.Positions.Add(new PositionComboBoxItemVm() {Id = ?, Name = ?}))
                
            }

        }
    }


Модератор: Учимся использовать тэги оформления кода - FAQ
...
Рейтинг: 0 / 0
update Model
    #39650677
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем GРешил отлавливая события обновлять саму модель. Пока не получается :( . Это возможно ?

Пока не поймёте разницу между клиентским и серверным кодом, это для вас решительно невозможно. Ничего сделать нельзя, увы.
...
Рейтинг: 0 / 0
update Model
    #39650716
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем GРешил отлавливая события обновлять саму модель.в поставке либы должна быть папка с демками образцами.
Изучили?
...
Рейтинг: 0 / 0
update Model
    #39650775
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123Артем GРешил отлавливая события обновлять саму модель.в поставке либы должна быть папка с демками образцами.
Изучили?

Да, изучил. То, как передавать выбранные items в контроллер примеров нет.
Как и писал выше, походу контрол не доделанный :(
Народ открывал тикеты. Поддержка предлагает на кнопку вешать скрипт который будет получать значение из второго листбокса и передовать в controller.

Почему спросил возможно ли обновлять модель с помощью скрипта, потому что не хочется отходить от выбранной концепции написания кода.

hVosttАртем GРешил отлавливая события обновлять саму модель. Пока не получается :( . Это возможно ?

Пока не поймёте разницу между клиентским и серверным кодом, это для вас решительно невозможно. Ничего сделать нельзя, увы.

Спасибо. Выберу другой контрол.
...
Рейтинг: 0 / 0
update Model
    #39650782
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем GПочему спросил возможно ли обновлять модель с помощью скрипта, потому что не хочется отходить от выбранной концепции написания кода.

Можно. Если речь идёт про Kendo. Не с кендо я не работал, это прошлый век, не интересно. Да и глянул в доку, там всё подробно расписано и я не вижу проблем там тоже, мне не хочется с этим разбираться.
...
Рейтинг: 0 / 0
update Model
    #39650791
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVosttАртем GПочему спросил возможно ли обновлять модель с помощью скрипта, потому что не хочется отходить от выбранной концепции написания кода.

Можно. Если речь идёт про Kendo. Не с кендо я не работал, это прошлый век, не интересно. Да и глянул в доку, там всё подробно расписано и я не вижу проблем там тоже, мне не хочется с этим разбираться.

Да, речь идет о Кендо. По поводу прошлого века, если можно, то поделитесь что сейчас в тренде.
По поводу документации. Гляжу вот здесь https://demos.telerik.com/aspnet-mvc/listbox
Не вижу как обновить модель с помощью самого ListBox.

мой код

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
@(Html.Kendo().ListBox()
              .Name("PositionsDatasource")
              .DataValueField("Id")
              .DataTextField("Name")
              .Toolbar(toolbar =>
              {
                  toolbar.Position(Kendo.Mvc.UI.Fluent.ListBoxToolbarPosition.Right);
                  toolbar.Tools(tools => tools
                      .TransferTo()
                      .TransferFrom()
                      .TransferAllTo()
                      .TransferAllFrom()
                      );
              })
              .DataSource(datasource => datasource
                      .Custom()
                      .Transport(transport => transport
                          .Read(read => read.Action("GetPositions", "Process"))))
              .ConnectWith("PositionsSelected")
              .DropSources("PositionsSelected")
              .Draggable(true)
              .Navigatable(true)
              .Selectable(ListBoxSelectable.Single)
              .Events(events => events
                  .Add("onAdd")
                  .Remove("onRemove"))
              )
        
        @(Html.Kendo().ListBox()
                      .Name("PositionsSelected")
                      .DataValueField("Id")
                      .DataTextField("Name")
                      .BindTo(Model.Positions)
                      .ConnectWith("PositionsDatasource")
                      .DropSources("PositionsDatasource")
                      .Draggable(true)
                      .Navigatable(true)
                      .Selectable(ListBoxSelectable.Single)
                      .Events(events => events
                      .Add("onAdd")
                      .Remove("onRemove"))
                      )



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
    function onAdd(e) {

        debugger;

        var model = @Html.Raw(Json.Encode(Model));

        e.preventDefault();

        var listBoxName = getListBoxName(e);

        if (listBoxName === "PositionsSelected") {

            for (var index = 0; index < e.dataItems.length; index++) {

                var dataItem = e.dataItems[index];

здесь думал обновлять модель Model.Positions.Add(new PositionComboBoxItem() {Id = dataItem.Id, Name = dataItem.Name })

            }
        }
        // alert("add : " + getListBoxName(e) + " : " + e.dataItems.length + " item(s)");
    }



...
Рейтинг: 0 / 0
update Model
    #39650793
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем G
Код: java
1.
здесь думал обновлять модель Model.Positions.Add(new PositionComboBoxItem() {Id = dataItem.Id, Name = dataItem.Name })



Это JavaScript, выполняется на клиенте. Вы НЕ МОЖЕТЕ там вызывать серверный код.

Вот описание API для контрола ListBox

https://docs.telerik.com/kendo-ui/api/javascript/ui/listbox

Всё, что вам нужно, там есть. Внимательно читаем.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / update Model
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]