簡體   English   中英

Javascript:選中頁面上的所有復選框。 它檢查所有的一秒鍾,然后消失

[英]Javascript: selecting all checkboxes on a page. It checks all for a second and then disappears

我有一個呈現局部視圖的視圖。 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);
                        }
                    });
                }

發生問題的原因是,在觸發檢查/取消選中時,您的ajax調用尚未完成。 撥打電話至

SelectAllCheckboxesOnLoad();

在成功方法之后

$('#Grid').html(result);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM