asp.net - كيف يمكنني تحديد خانة يرتبط كل صف (المستخدم)

StackOverflow https://stackoverflow.com/questions/1214503

  •  06-07-2019
  •  | 
  •  

سؤال

وأستخدمه asp.net بعثة التحقق المشتركة. لقد ولدت الرأي القائل بأن استرداد كافة المستخدمين لم تتم الموافقة عليها في الجدول عضوية asp.net. لقد وضعت مربعات الاختيار بجوار لهم لشخص ما لإظهار وجهة نظر. الهدف هو أن شخصا ما يجب أن تكون قادرة على التحقق من بعض خانات، وأصيب إنقاذ، وأنه سيعود إلى عضوية asp.net وتغيير العلم IsApprove إلى true لهؤلاء المستخدمين.

وكيف يمكنني استخراج ما يتم تعيين المجالات على النحو الصحيح عندما أكون في الصف تحكم؟

وهنا هو رمز الرأي:

<% using (Html.BeginForm()) {%>
<table id="hor-zebra" border = 2>
<tr><td>User</td><td>Approve</td>
</tr>
<%
    MembershipUserCollection membership = (MembershipUserCollection)ViewData["UnapprovedUsers"];
    foreach (MembershipUser member in membership)
     {
        %><tr><td>
        <%=Html.Encode(member.UserName) %> </td><td>
        <%= Html.CheckBox("Approve:" + member.UserName, false) %>
        </td></tr>
  <%
     }
%>
</table>
<input type="submit" value="Save" /><% } %>

وهنا هو رمز تحكم:

    [AcceptVerbs(HttpVerbs.Post)]
    public void ApproveUsers(FormCollection formCollection)
    {
        Console.Write("I have not idea how i can determine which checkboxes are checked");
    }
هل كانت مفيدة؟

المحلول

وأولا وقبل كل شيء، أن تكون حذرا مع Html.Checkbox (). فإنه لا مجرد تقديم مربع اختيار، ولكن حقل مخفي كذلك. لكل مستخدم (مثل "USERNAME1" في هذه الحالة) سيكون يلي المقدمة:

<input id="Approve: username1" name="Approve: username1" type="checkbox" value="true"/>
<input name="Approve: username1" type="hidden" value="false" />

وهذا السؤال href="https://stackoverflow.com/questions/220020/how-to-handle-checkboxes-in-asp-net-mvc-forms"> رمي عليه بتفاصيل اكثر. خيار واحد هو مجرد كتابة أتش تي أم أل نفسك لهذا، مثل:

<input type="checkbox" name="<%=member.UserName%>" />

عند هذا يحصل نشرها إلى المراقب المالي الخاص بك يمكنك الحصول عليه عن طريق Request.Form[member.Username]. اذا كان لاغيا، لم فحص مربع. إذا كان لديه قيمة "تشغيل"، كان عليه.

scroll top