我有这段代码在表 mvc (jquery-1.7.1) 中添加行
<div id="model-form">
@Html.Partial("_FormXXX", Model)
</div>
$(document).ready(function () {
$("#button-aggiungi-riga").click(function () {
$.post("mypage", $("form").serialize(), function (data) {
$("#model-form").html(data);
});
ShowHideRows();
return false;
});
$(document).on("click", ".rimuovi-riga", function () {
// set true in hidden field to set removed
$(this).next().val("True");
ShowHideRows();
return false;
});
ShowHideRows();
});
function ShowHideRows() {
$(".riga").each(function () { //loop over each row
if ($(this).find("input[id$=__Removed]").val() == "True") {
$(this).hide();
}
else {
$(this).show();
}
});
}
在 asp.net mvc 部分视图中,我有以下代码
<tr class="riga">
<td>
...
</td>
<td>
<input class="rimuovi-riga" type="button" value="-" />
@Html.HiddenFor(m => m.Removed)
</td>
</tr>
该函数ShowHideRows
是从其他函数(例如DeleteRow
)调用的,我知道它可以工作。当我从 调用它时$("#button-aggiungi-riga").click
,它不起作用。我在firebug中调试了它,发现和val()
值是正确的。它显示所有行。(我没有得到Style=display:hidden
)。