开发者

post row where radio button is checked

开发者 https://www.devze.com 2023-01-01 10:57 出处:网络
I try to post data row in which radio button is checked but failed, what is wrong? View: <form id="numbers-form" method="post" action="/Numbers/Numbers">

I try to post data row in which radio button is checked but failed, what is wrong?

View:

<form id="numbers-form" method="post" action="/Numbers/Numbers">
<table id="numbers">
    <tr>
        <th>
            prvi_br
        </th>
        <th>
            drugi_br
        </th>
        <th>
            treci_br
        </th>
    </tr>
<% int rb = 1; %>
<% foreach (var item in Model) { %>
    <tr>
        <td>
        <%= Html.Encode(item.prvi_br) %>
        <input type="radio" name="<%= Html.Encode(rb) %>"  value="<%= Html.Encode(rb) %>" id='<%= Html.Encode(item.prvi_br) %>'/>
        </td>
        <td>
        <%= Html.Encode(item.drugi_br) %>
        <input type="radio" name="<%= Html.Encode(rb)%>" value="<%= Html.Encode(rb) %>" id='<%= Html.Encode(item.drugi_br) %>'/>
        </td>
        <td>
        <%= Html.Encode(item.treci_br) %>
        <input type="radio" name="<%= Html.Encode(rb)%>" 开发者_StackOverflow中文版value="<%= Html.Encode(rb) %>" id='<%= Html.Encode(item.treci_br) %>'/>
        </td>
    </tr>
<% rb++; %>

<% } %>
</table>
        <p>
            <input type="submit" value="Save" />
        </p>
</form>

Controller action:

    [HttpPost]
    public ActionResult Numbers(int[] rb)
    {
        brojevi br = new brojevi();
        for (int i = 1; i <= rb.Length; i++) //in this line I have error:Object reference not set to an instance of an object.
        {
            br.prvi_br = i;
            br.drugi_br = i+1;
            br.treci_br = i+3;
        }
        numbers.AddTobrojevi(br);
        numbers.SaveChanges();
        return View();
    }


Shouldn't your Numbers method accept a FormCollection instead of an int[]?

Something like this seems to work, but not knowing your functionality, it's hard to tell if it will suit your purpose:

[HttpPost]
public ActionResult Numbers(FormCollection fc)
{

    foreach (string key in fc.Keys)
    {
        int i = Convert.ToInt32(key);
        // i = the number of the item that was selected.
    }

    return View();

}
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号