2012-02-14 11 views
0

私は学生をリストするビューを持っています。私は各学生の前に削除アイコン(赤い "x")を追加したいと思います。削除アイコンをクリックするとその学生が削除されます。ビュー内の各レコードに削除アイコン "x"を追加します

私は、テキストボックスに学生IDを入力し、これを行うにボタンを追加することによって、それを行う方法を知っています。しかし、私は各学生の前で削除アイコンをクリックして同じことをしたい。ここで

が私の見解コードさ:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %> 
<%@ Import Namespace="Student.Models" %> 

<asp:Content ID="Content3" ContentPlaceHolderID="TitleContent" runat="server"> 
    Student 
</asp:Content> 

<asp:Content ID="Content4" ContentPlaceHolderID="MainContent" runat="server"> 

<form id="Form1" method="get" action="/Student/RemoveStudent/" runat="server"> 
    <label for="id"> 
     Student ID: 
    </label> 
    <input type="text" name="studentID" value="<%=HttpContext.Current.Request.QueryString["studentID"]%>" /> 

    <input type="submit" value="Remove Student"/> 

    </form> 

    <h2>Students</h2> 
     <table> 
      <% foreach (Student in (IEnumerable)ViewData.Model) 

      { %> 
     <tr> 
      <td> 
       <%= s.StudentID %> 
      </td> 
     </tr> 
      <% } %> 
    </table> 

</asp:Content> 

ここでは私のコントローラのアクションは次のとおりです。手始めに、事前

答えて

3

public ActionResult Index() 
{ 

    return View(_repository.ListAll().OrderByDescending(s => s.StudentName)); 
} 

public ActionResult RemoveStudent(int studentId) 
{ 

    StudentDataContext student = new StudentDataContext(); 

    var std = student.Students.Single(s => s.StudentID == studentId); 
    student.Students.DeleteOnSubmit(std); 
    student.SubmitChanges(); 
    return Content("Student" + studentId + " Removed"); 
} 

おかげで、あなたは画像

<table> 
     <% foreach (Student in (IEnumerable)ViewData.Model) 

     { %> 
    <tr> 
     <td> 
      <%= Html.ActionLink("RemoveStudent",    // Action 
           "Students",      // Controller 
           new { id = Student.studentId }, // Route Args 
           new { @class="deleteButton" } // HTML Args 
      ) %> 
     </td> 
     <td> 
      <%= s.StudentID %> 
     </td> 
    </tr> 
     <% } %> 
</table> 
を追加する必要があります

と小さなCSS

a.deleteButton 
{ 
    background: url(../Images/delete.gif) no-repeat top left; 
    display: block; 
    width: 50px; 
    height: 50px; 
    text-indent: -9999px; /* hides the link text */ 
} 

これははるかに詳細ですが、あなたはポイントを得ることができます。あなたは、フォームを介して削除を提出し、それとユーザーIDを渡すことができます...

+0

どこにCSSを追加する必要がありますか? – user793468

+0

をあなたのCSSファイルに追加してください。 –

+0

もし..もしあなたがstudentId> 111 – user793468

関連する問題