2016-03-17 58 views
0

我收到了有關JavaScript的問題。 Specificly,我有這樣在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> 

一個表,我宣佈一個陣列,從檢查的行的第一列中的複選框持有僱員。但是,它說arrayOfEmployeeId.push(id);不是功能。 順便說一句,我想獲得EmployeeId數組來執行ASP.NET web api中的DELETE方法。我對嗎?

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

'var arrayOfEmployeeId = {}'不是數組,而是一個對象,你必須這樣做:'var arrayOfEmployeeId = [];' – cl3m

+0

是的,這是完全正確的。 – Kramer

回答

5

arrayOfEmployeeId是一個對象({})。你可能需要的是像var arrayOfEmployeeId = [];這樣的數組。

+0

如果我想刪除一個元素,我該怎麼辦? – Kramer

+0

你可以這樣做:'arrayOfEmployeeId = arrayOfEmployeeId.slice(arrayOfEmployeeId.indexOf(id),1)' – cl3m

+0

使用['splice()'](https://developer.mozilla.org/en-US/docs/Web/的JavaScript /參考/ Global_Objects /陣列/拼接)。 – str

0

arrayOfEmployeeId = {};是一個對象 你可以使它成爲一個數組。

arrayOfEmployeeId = []; 您可以使用拼接方法來刪除,就像你想要的。

+0

是的,我認爲拼接很好。但我爲我自己定義了一個函數來使用。非常感謝你。 – Kramer

+0

沒問題!快樂的編碼 –