0
我的應用程序允許您跟蹤商店數據庫中的訂單。該數據庫包含用於notes
的弱實體,該實體附加到orderID
。我希望允許用戶同時對多個訂單應用相同的「備註」,但notes
表中的某些字段取決於銷售的location
。換句話說,如果所有的銷售地點都是相同的,你只能被允許應用相同的註釋。檢查檢查行中的值是否相同
簡體查閱:
@using (Html.BeginForm("Create", "Note", FormMethod.Get, new { name = "editForm" }))
{
<table id="DataTable">
<tr>
<th>
<input type="button" value="Edit" onclick="checkboxValidation()"/>
</th>
<th>
@Html.DisplayNameFor(model => model.OrderID)
</th>
<th>
@Html.DisplayNameFor(model => model.location)
</th>
</tr>
@foreach (var item in Model)
{
<tr >
<td>
<input type="checkbox" name="ids" value="@item.orderID" />
</td>
<td>
@Html.ActionLink(item.OrderID.ToString(), "Details", "Search", new { orderID = item.orderID.ToString() }, null)
</td>
<td>
@Html.DisplayFor(modelItem => item.location)
</td>
</tr>
}
</table>
checkboxValidation()
是一個JavaScript函數,我寫檢查,如果至少1複選框被選中。我將如何添加一張支票以確保所有已檢查的行上的所有位置都相同?這甚至有可能嗎?謝謝
編輯:我錯過了一個細節。當點擊編輯按鈕時,如果檢查成功,它會提交表單,從而調出notes
編輯器。
似乎是一個簡單的解決方案。我不是JS的主人,所以也許你可以通過解釋一些事情來招待我?我有理解'push','nearest'和'function(i,e)'的問題。我假設推送只是將該項目添加到「位置」。究竟是什麼決定了如何「關閉」一個元素對另一個元素?謝謝 – Jeff
@Jeff是的,'push'將一個項目添加到數組中。 '最近'獲取匹配選擇器的第一個元素,向上到DOM樹(即,我在這裏使用它來獲取屬於複選框的'td'元素)。 'function(i,e)'是'each'的迭代函數 - 當然你可以命名'i'和'e',但它們是當前項目的索引和項目本身。 – McGarnagle
感謝您的解釋。看來,Visual Studio不喜歡這行'if(element.is(「:checked」)){'。給出的錯誤信息是「Microsoft JScript運行時錯誤:對象不支持此屬性或方法」。調試時,這個問題似乎是用'.is'。我正在使用JS 1.8.0 – Jeff