在javascript中将项目推送到数组中

时间:2016-03-17 09:00:56

标签: javascript asp.net-web-api

我遇到了一个关于JavaScript的问题。具体来说,我有一个类似

的表格
<table class="table">
    <tr>
        <th>
            <label>Select</label>
        </th>
        <th>
            @Html.DisplayNameFor(model => model.FirstName)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.Middle)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.LastName)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.DoB)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.Gender)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.StartDate)
        </th>
        <th></th>
    </tr>

@foreach (var item in Model) {
    <tr id="@Html.DisplayFor(modelItem => item.EmployeeId)" ondblclick="DoubleClickOnRow(this)">
        <td>
            <input id="@Html.DisplayFor(modelItem => item.EmployeeId)" type="checkbox" onclick="SelectCheckBox(this)"/>
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.FirstName)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Middle)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.LastName)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.DoB)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Gender)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.StartDate)
        </td>
    </tr>
}
</table>

我声明一个数组来保持EmployeeId不检查行第一列中的复选框。但是,它说 arrayOfEmployeeId.push(id); 不是函数。 顺便说一下,我希望在ASP.NET web api中获取EmployeeId数组来执行DELETE方法。我是对的吗?

var arrayOfEmployeeId = {};
function SelectCheckBox(thisRow)
    {
        var id = thisRow.id;
        arrayOfEmployeeId.push(id);
        console.log(arrayOfEmployeeId);
    }

2 个答案:

答案 0 :(得分:5)

arrayOfEmployeeId是一个对象({})。您可能想要的是像var arrayOfEmployeeId = [];这样的数组。

答案 1 :(得分:0)

arrayOfEmployeeId = {};是一个对象 你可以把它变成一个数组。

arrayOfEmployeeId = []; 您可以使用拼接方法删除您想要的内容。