Member 12809036 Ответов: 2

Как передать данные HTML таблицы из представления в контроллер MVC


Как отправить HTML-таблицу из представления в контроллер. Я новичок в MVC. у меня есть таблица в представлении, где я показываю свои данные в представлении. теперь я должен отправить эти данные в HTML-файле контроллеру при нажатии кнопки, но мой метод HttpPost, похоже, не получает данных. Пожалуйста, помогите мне исправить.

Что я уже пробовал:

Как myview.cshtml по
@using MyTest.Models

@model IEnumerable<StudentInfo>
 
@{
    ViewBag.Title = "MyView";
}
 
<h2>MyView</h2>
 
    <div style="background-color:blue; height:500px; id="aa">
        @using (Html.BeginForm("AddNew", "Home"))
        {
            <input type="submit" value="submit" id="btnsubmit" />
            <table style="width:100%;">
                <tr>
                    <th>ID.</th>
                    <th>Name</th>
                </tr>
                @if (Model != null )
                {
                foreach (StudentInfo SInfo in Model)
                {
                    <tr>
                        <td style="width:5%">@SInfo.ID</td>
                        <td style="width: 82%">@SInfo.Name</td>
                        <td style="width:5%"><input type="button" value="Delete" /></td>
                    </tr>
                    <tr style="border:solid; height:0%;" />
                }
                }
            </table>
        }
    </div>
-----------------------------------------------------------
Модель--&ГТ; процедуру studentinfo.в CS
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
 
namespace MyTest.Models
{
    public class BookInfo
    {
        public int ID { get; set; }
        public string Name { get; set; }
    }
}


---------------------------------------------
Контроллер-- & gt; HomeController. cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MyTest.Models;

 
namespace MyTest.Controllers
{
 
    public class HomeController : Controller
    {
        
        public ActionResult Myview()
        {
            return View("Myview");
        }
        
        public ActionResult clickevent(string btnsave)
        {
            //return RedirectToAction("Index");
            //return this.SelectItem();
            return this.secondpg();
        }
        
        public ActionResult Myview()
        {
            List<StudentInfo> StuInfo = new <StudentInfo>();
            StudentInfo SInfo = new StudentInfo();
            
            SInfo.ID=1;
            SInfo.Name="Christ";
            StuInfo.Add(SInfo);
            
            SInfo = new StudentInfo();
            SInfo.ID=2;
            SInfo.Name="Steven";
            StuInfo.Add(SInfo);

         
 
            return View("MyView", StuInfo);
        }
 
        [HttpPost] // Why StuInfo Result is Null Value? I can't get the data back from View Table..
        public ActionResult Myview(IEnumerable<MyTest.Models.StudentInfo> StuInfo)
        {
            // The StudentInfo result is always... Why?

            List<StudentInfo> Newdata = StuInfo;
            
             // Additional record added.
             StudentInfo SS = new StudentInfo();
             SS.ID=3;
             SS.Name="Michael";
             Newdata.Add(SS);
            
            return PartialView("Myview", Newdata);
        }
 
    }
}

2 Ответов

Рейтинг:
2

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Вам нужно иметь некоторые элементы управления, чтобы разместить их. Итак, добавьте элементы управления внутри цикла.

Ссылаться - asp.net mvc-передать табличное значение из представления в контроллер MVC-переполнение стека[^]