powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Получить имя/ид из select html
17 сообщений из 42, страница 2 из 2
Получить имя/ид из select html
    #39269004
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что ерунду делаете:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
        public ActionResult Index()
        {
           var x = new personal();
           
            ViewBag.Personals = new SelectList(db.personal_,  "ID", "NAME", 2);
           
            return View(x);
            
        }
        [HttpPost]
        public ActionResult Index(personal model)
        {
            //вот тут тормозите и смотрите , что у вас в model            

            ViewBag.Personals = new SelectList(db.personal_,  "ID", "NAME", 2);
            return View(model);
        }
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39269091
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

Огромное Вам спасибо! понял свою ошибку, все получилось.
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39269663
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Небольшой вопрос, почему @ViewBag.PP(Name) всегда пустое значение? а ViewBag.PerN(ID) все ок показывает:
вью:
Код: 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.
@model WebApplication5.Models.personal
@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
   
    @using (@Html.BeginForm(null, null, FormMethod.Post, new{ @class= "form-group"}))
    {
      
       @Html.DropDownList("ID", ViewBag.Personals as SelectList, "", new { id = "ID", @class = "form-control" })
        
        <input type="submit"  class="btn btn-danger" />
     
    }    

</div>


<div>

    @ViewBag.PerN

    @ViewBag.PP
   
</div>



контроллер:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
   public class HomeController : Controller
    {
        ProdContextModels db = new ProdContextModels();
        
        public ActionResult Index()
        {                      
            ViewBag.Personals = new SelectList(db.personal_, "ID", "NAME", 2);           
            return View();            
        }
        [HttpPost]
        public ActionResult Index(personal model)
        {
            ViewBag.Personals = new SelectList(db.personal_, "ID", "NAME", 2);
            ViewBag.PP = model.NAME;           
            ViewBag.PerN = model.ID;
           
            return View(model);
        }
   
    }


модель:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
     [Table("personal")]
    
    public class personal
    {
        
        public int ID { get; set; }
        public string NAME { get; set; }
       
       
    }
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39269708
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у вас нет input который в model.NAME что-то постит
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39269958
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

то есть я не смогу с одного droplista передать 2 параметра постом по нажатию одной кнопки?
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39269976
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ваш select привязан в модели к полю ID
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270019
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

да, это я понял,а если у меня в модели будет 20 параметров и мне надо будет их отобразить, выбрав элемент из droplista, то?
с Input игрался, что-то не то получается...
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270025
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
смотря что за параметры и откуда они, вы же модель можете расширить. добавьте туда, например, поле Dictionary<string, string> и заполните чем вам нужно. сама ваша задача непонятна и вы как-то сбоку к ней заходите.
я же сразу написал используйте javascript для отправки формы, а перед отправкой заполняйте все нужные вам параметры
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270035
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

А можно ли по нажатию запостить и value (ID) и option(NAME), а не один из них по которому идет привязка(исключая js)?
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270038
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в крадце:
форма должна содержать INPUT-элементы, их содержимое VALUE и поститься. если NAME инпутов совпадает с именем поля в вашей модели, то это значение и передается в модель.

1 INPUT = 1 ЗНАЧЕНИЕ
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270047
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и вообще, зачем вам что-то ещё надо, если вы в контроллере уже получили ID выбранной записи из списка. так найдите эту запись по таблице и выдайте обратно во View все нужные данные.


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
       [HttpPost]
        public ActionResult Index(personal model)
        {
            var p = db.personal_.Where(x => x.ID == model.ID).FirstOrDefault();
            model.NAME = p.NAME;
            ViewBag.Personals = new SelectList(db.personal_, "ID", "NAME", 2);
          
            return View(model);
        }



Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
@model WebApplication5.Models.personal
@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
      @using (@Html.BeginForm(null, null, FormMethod.Post, new{ @class= "form-group"}))
    {
      
       @Html.DropDownList("ID", ViewBag.Personals as SelectList, "", new { id = "ID", @class = "form-control" })
        
        <input type="submit"  class="btn btn-danger" />
     
    }    
</div>

<div>
    @Model.NAME
</div>
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270065
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

примерно так я пробовал, сделал по вашему все равно ругается:
авторСсылка на объект не указывает на экземпляр объекта.

Описание: Необработанное исключение при выполнении текущего веб-запроса. Изучите трассировку стека для получения дополнительных сведений о данной ошибке и о вызвавшем ее фрагменте кода.

Сведения об исключении: System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.

Ошибка источника:


Строка 15:
Строка 16: <div>
Строка 17: @Model.NAME
Строка 18: </div>
Строка 19:

Исходный файл: \\mac\home\Documents\Visual Studio 2013\Projects\WebApplication5\WebApplication5\Views\Home\Index.cshtml Строка: 17
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270074
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
@(Model.NAME ?? "")

или в get методе присвойте model.NAME = ""
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270085
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

не, все равно та же ошибка.
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270095
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
получилось через ViewBag не знаю насколько это верно, но работает...
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
   [HttpPost]
        public ActionResult Index(personal model)
        {
            
            var p = db.personal_.Where(x => x.ID == model.ID).FirstOrDefault();
            ViewBag.LL = p.NAME;
            ViewBag.KK = p.ID;
            ViewBag.Personals = new SelectList(db.personal_, "ID", "NAME", 2);

            return View(model);
        }
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270100
Иммануил Кант
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mishanya3624получилось через ViewBag не знаю насколько это верно, но работает...
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
   [HttpPost]
        public ActionResult Index(personal model)
        {
            
            var p = db.personal_.Where(x => x.ID == model.ID).FirstOrDefault();
            ViewBag.LL = p.NAME;
            ViewBag.KK = p.ID;
            ViewBag.Personals = new SelectList(db.personal_, "ID", "NAME", 2);

            return View(model);
        }



это костыль. что Вам мешает, все что необходимо для View записать в Model ("ViewModel"). То, что модель у Вас это не ViewModel, а Entity?
...
Рейтинг: 0 / 0
Получить имя/ид из select html
    #39270191
mishanya3624
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иммануил Кант,

ммм, можно с небольшим примером, если не трудно, а то Konst_One уже устал от меня неуча:)
...
Рейтинг: 0 / 0
17 сообщений из 42, страница 2 из 2
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Получить имя/ид из select html
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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