【发布时间】:2021-04-12 19:26:13
【问题描述】:
我对 JQuery 没有经验,希望得到您的帮助。我正在尝试将库存添加到现有产品中。控制器中的操作被正确调用。我的目标是在用户输入的库存小于 1 时发出弹出警报。当我尝试为列表中的第一项添加库存时,它可以完美运行!请参见下面的示例 1。
Example 11:https://i.stack.imgur.com/j39fj.png
但是,当我尝试对列表中的第二项进行相同操作时,输入的库存编号的值没有被提取。你能帮我找出我缺少的东西吗?为什么这个号码只是第一次被拿起,而不是列表中的第二个?请看下面的例子2。Example 2
您也可以参考以下代码。
在视图中:
<tbody>
@foreach (var item in Model) {
<tr>
<th>
@Html.DisplayFor(modelItem => item.ProductCode)
</th>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Description)
</td>
<td>
@Html.DisplayFor(modelItem => item.Stock)
</td>
<td>
@{
var temp = (Math.Truncate(item.Price * 100) / 100).ToString("n2");
@Html.DisplayFor(model => temp)
}
</td>
<td>
<a id="editLink" asp-action="Edit" asp-route-id="@item.ProductCode">Edit</a> |
<a class="deleteLink" asp-action="Delete" asp-route-id="@item.ProductCode">Delete</a>
</td>
<td>
@using (Html.BeginForm("AddStock", "Livestock", FormMethod.Post))
{
<p>
<input type="hidden" name="id" value="@item.ProductCode">
<input type="hidden" name="pName" value="@item.Name">
<input type="number" name="stock" id="inputStock">
<input type="submit" value="Add Stock" class="btn btn-primary" id="go"/>
</p>
}
</td>
</tr>
}
</tbody>
在 site.js 文件中
//Stock
$(document).on('click', '#go', function (event) {
var numberIn = $('input[name=stock]').val();
var name = $('input[name=pName]').val();
if (numberIn < 1) {
alert("Number must be greater than 0!");
}
else {
alert("You have added " + numberIn + " stock to product: " + name);
}
});
【问题讨论】:
标签: jquery razor asp.net-core-mvc alert