テーブル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
)。