我有一个列表,其中包含部分视图中包含的许多项目:
<ul class="ls-list">
@if (Model.ItemList != null)
{
foreach (var item in Model.ItemList)
{
<li>
<a href="#">
@item.ID - @item.Name
</a>
</li>
}
}
else
{
<li>NO CURRENT ITEMS</li>
}
</ul>
<input type="submit" name="Submit" value="Submit"/>
@section Scripts
{
<script type="text/javascript">
$(document).ready(function () {
$("li").click(function () {
$(this).hide();
});
});
</script>
}
我试图在用户点击该锚点时获取列表项的值,但我无法触发我的jquery函数。我需要获取所选列表项的值,但只有在用户单击提交按钮后才能获得。
我无法控制部分的设计,因此无法使用下拉列表。
有人可以告诉我这里我做错了吗?
由于
答案 0 :(得分:0)
在白痴中,我在局部视图中添加了部分,所以当然我的事件没有被发射。简单的解决方案是删除section标签并保留脚本:
<ul class="ls-list">
@if (Model.ItemList != null)
{
foreach (var item in Model.ItemList)
{
<li>
<a href="#" id="selectItem">
@item.ID - @item.Name
</a>
</li>
}
}
else
{
<li>NO CURRENT ITEMS</li>
}
</ul>
<script type="text/javascript">
$(function() {
$("a.selectItem").click(function (e) {
$("#ID").val = e.ID;
alert(this.text);
});
});
</script>
或将该部分添加到父视图。我个人将其添加到父母那里。