Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET Core
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для EveKS
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885

Как лучше было сделать? (ASP.NET Core C# + JS)

14.04.2017, 12:01. Показов 638. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как подобное можно было сделать лучше?
У меня есть DropDownList, написанный на HTML:
C#
1
2
3
4
5
6
                        <select id="MarkerGropName" name="MarkerGropName">
                            @foreach (MarkerGroup item in ViewBag.MarkerGroup)
                            {
                                <option value="@item.Id">@item.GroupName</option>
                            }
                        </select>
Далее есть "кусок" JS:
JavaScript
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
43
44
45
                var markerCoordinate;
 
                function CreateMark(data, dataArray, contentType) {
                    $.ajax({
                        type: "POST",
                        url: "Home/Post",
                        dataType: "json",
                        contentType: contentType,
                        data: data,
                        success: function () {
                            var tmp = {};
                            $.each(dataArray, function () {
                                if (tmp[this.name] !== undefined) {
                                    if (!tmp[this.name].push) {
                                        tmp[this.name] = [tmp[this.name]];
                                    }
                                    tmp[this.name].push(this.value || '');
                                } else {
                                    tmp[this.name] = this.value || '';
                                }
                            });
 
                            var title = tmp.MarkerTitle;
                            var description = tmp.MarkerDescription;
                            var groupName = tmp.MarkerGropName;
 
                            var latitude = markerCoordinate.lat();
                            var longitude = markerCoordinate.lng();
 
                            addMarker(latitude, longitude, title, description, groupName, map);
                        }
                    });
                }
 
                $("#submit").click(function (e) {
                    e.preventDefault();
                    var $form = $(this).closest('form');
                    var data = $form.serialize();
                    var dataArray = $form.serializeArray();
 
                    var contentType = "application/x-www-form-urlencoded; charset=utf-8";
 
                    reset();
                    CreateMark(data, dataArray, contentType);
                });
как подобное можно было сделать проще?
Здесь groupName временно, и не стоит обращать внимание на то что там Id.
Так же, возможно кто подскажет как в DropDownList можно было задать Id и Name или как написать что-то подобное:
C#
1
2
3
var groupName = (ViewBag.MarkerGroup as List<MarkerGroup >)
    .FirstOrDefault(mes => mes.Id == SameID)
    .GroupName;
Т.е. как в JS подобное реализавать - передав туда ViewBag.MarkerGroup и вытащить оттуда GroupName по индексу. Идекс передается из формы name DropDownList.

Добавлено через 47 минут
Малость упростил )) - там всё равно пост запрос вернет что-то, сделал так чтоб возвращал мою модель MarkerMessage в JSON
C#
1
 return Json(markerMessage);
Этим самым я избавился от всех этих var markerCoordinate; dataArray и тд.
Изменив success на
JavaScript
1
2
3
4
5
6
7
8
9
10
success: function (result) {
 
    var title = result.title;
    var description = result.description;
    var id = result.markerGroupId;
    var latitude = result.latitude;
    var longitude = result.longitude;
 
    addMarker(latitude, longitude, title, description, id, map);
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.04.2017, 12:01
Ответы с готовыми решениями:

ASP.NET Core. Как лучше организовать работу со скриптами JS?
Собственно, вот и весь вопрос. Скидываю все скрипты в файл site.js Большинство скриптов будут использоваться только на одной странице, но...

ASP.NET Core. Старт - что нужно знать, чтобы стать ASP.NET Core разработчиком?
Попалось хор краткое обзорное видео 2016 года с таким названием - Что нужно знать, чтобы стать ASP.NET MVC разработчиком? Сейчас уже 2018...

ASP.NET Core. Как сделать DatabaseFirst через EF
В общем, так. Есть у меня база данных сделанная на Transbase. Вот мне в мою базу данных под проект надо оттуда вытянуть маленькую кучу...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.04.2017, 12:01
Помогаю со студенческими работами здесь

Разница между ASP.NET Core 2, ASP.NET Core MVC, ASP.NET MVC 5 и ASP.NET WEBAPI 2
Здравствуйте. Я в бекенд разработке полный ноль. В чем разница между вышеперечисленными технологиями? Есть ли в них что-то общее - могу ли...

Какая разница между ASP .Net Core и ASP .Net Core MVC?
Какая разница между ASP .Net Core и ASP .Net Core MVC? Или я может что-то не так понял? И подскажите пожалуйста еще какие-то книги для...

Возможно ли сделать аналог MDI на ASP.NET Core?
Ребята, начну с краткой «лирики»… Решения от Microsoft (для Web проектов) шли семимильными шагами…. (шаблоны)ASP.NET MVC 3,4,5 … ...

ASP.NET Core: разный формат даты контроллера ASP.NET и AngularJS
Собственно, проблему пока еще не разруливал, но уже погуглил. Разный формат даты который использует ASP.NET и AngularJS не позволяет на...

Что выбрать ASP.NET или ASP.NET Core ?
Добрый день форумчане, хотелось бы услышать ваше мнение, какой из перечисленных фреймворков лучше начать изучать с нуля в данный момент...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru