部分ビューをレンダリングするビューがあります。Index.cshtml には部分ビューが含まれています。
以下の div は部分ビューに存在します
<div id="sa-da">
<input type="checkbox" id="selectAll"/><span>@T("Select / Deselect all invoices")</span>
<div class="payinvoices"><input class="amebtn" id="PayInvoices" type="button" text="Pay Invoices" onclick="RemovePagination();"/> </div>
</div>
以下の方法を使用して、ボタンをクリックして部分ビューのグリッド(webgrid)のページネーションをオフにしています
function RemovePagination()
{
UpdateGrid("","clkPayInv");
$('#invoicestatus').val('unpaid');
SelectAllCheckboxesOnLoad();
}
以下の関数で、ボタンをクリックしたときにすべてのチェックボックスも選択したい
function SelectAllCheckboxesOnLoad()
{
var aa= document.getElementsByTagName("input");
for (var i =0; i < aa.length; i++){
if (aa[i].type == 'checkbox')
aa[i].checked = true;
}
}
?? ボタンをクリックするとチェックボックスがチェックされますが、チェックされたままにはなりません。すべてのチェックボックスがチェックされていることを示す一瞬だけちらつき、その後消えます。どうすればこれを修正できますか?
function UpdateGrid(searchString,whatWasClicked) {
$jq.ajax({
url: '@Url.Action("Invoices")',
type: "GET",
cache: false,
data: { status: $("#invoicestatus").val(), from: $("#from").val(), thru: $("#to").val(), search: searchString, payInvClickBtn:whatWasClicked},
dataType: "html",
global: false,
error: function (jqXHR, status, error) { if (jqXHR.status == 401) { window.location.replace(location.href); } } ,
success: function (result, status, hr) {
$('#Grid').html(result);
}
});
}