मेरे पास एक ग्रिड-व्यू है जो बहुत लंबा है। मैं पोस्टबैक पर स्क्रॉल स्थिति बनाए रखना चाहता हूं। मैं ढेर अतिप्रवाह पर कई समाधान की कोशिश की है, लेकिन पता है मेरे लिए काम किया।

यहाँ मेरा ग्रिडव्यू है

<div class="largeGridScroll">
           <asp:GridView ID="gvInventario" runat="server" AutoGenerateColumns="false"  AllowSorting="true" ShowFooter="false" DataKeyNames="componente_id, ubicacion_id, proveedor_id"  PageSize="10"
                ShowHeaderWhenEmpty="true" AllowPaging="True" OnRowEditing="gvInventario_RowEditing" OnRowCancelingEdit="gvInventario_RowCancelingEdit" OnPageIndexChanging="gridView_PageIndexChanging" 
                 CellPadding="3"  AllowColumResize="True" onsorting="grdDetails_Sorting" GridLines="None" CssClass="mGrid" PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt">    
                <Columns>
                </Columns>
            </asp:GridView>
            </div>

यहां उन बटनों के लिए कोड दिया गया है जिन्हें मैं स्क्रॉल बार को आराम करने से रोकना चाहता हूं

        <asp:Button class="btn btn-primary" ID="btnConfirmPurchases" runat="server" Text="Validar" AutoPostback="true" width="20%"  OnClick="Add_location_Click" /> 
            <asp:Button class="btn btn-primary"  ID="Button1" runat="server" Text="Validar" OnClick="Confirm_purchase_order_Click"  />
  <asp:Button class="btn btn-primary" ID="btnShowPurchaseOrder" runat="server" Text="Comprar" AutoPostback="false" OnClientClick="return ShowModalPopup(); return false;" OnClick="view_purchases_click" />     

                    <asp:TemplateField>
                        <ItemTemplate>
                            <asp:ImageButton ImageUrl="~/Images/edit.png" runat="server" CommandName="Edit" ToolTip="Edit" Width="20px" Height="20px"/>
                           <%-- <asp:ImageButton ImageUrl="~/Images/shopping.png" runat="server" class="button" ToolTip="Shopping" Width="20px" Height="20px" />--%>
                            <a class="button" href="#popup1" ><img src="../images/shopping.png" width="20" height="20"/></a>
                        </ItemTemplate>
                        <EditItemTemplate>
                            <asp:ImageButton ImageUrl="~/Images/save.png" runat="server" ToolTip="Update" Width="20px" Height="20px" OnClick="updateOcurencia"/>
                            <asp:ImageButton ImageUrl="~/Images/cancel.png" runat="server" CommandName="Cancel" ToolTip="Cancel" Width="20px" Height="20px"/>
                        </EditItemTemplate>
                    </asp:TemplateField>

यहाँ सीएसएस है।

.largeGridScroll 
{
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
}

यहाँ दृश्य है जहाँ मेरा ग्रिडव्यू दिखता है। image of grid

जब मैं किसी एक बटन को दबाता हूं तो मैं चित्र की तरह ही अपनी स्क्रॉल स्थिति नहीं खोना चाहता। मैंने जावास्क्रिप्ट और अपडेट पैनेल का उपयोग करने का प्रयास किया है, लेकिन बिना किसी सफलता के क्योंकि सभी ट्यूटोरियल में लंबवत स्क्रॉल है और मेरी तरह क्षैतिज नहीं है। किसी भी मदद का स्वागत किया जाएगा, आपका धन्यवाद।

1
Junior Cortenbach 6 अगस्त 2019, 17:56

1 उत्तर

सबसे बढ़िया उत्तर

मुझे यहां जवाब मिला https:/ /www.webcodeexpert.com/2015/09/how-to-maintain-scroll-position-of-html.html इसे हॉरिजॉन्टल बनाने के लिए मुझे केवल कुछ छोटी चीजों को बदलने की जरूरत है यहाँ मेरा सीएसएस है

.largeGridScroll 
{
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
}

यहाँ मेरी जावास्क्रिप्ट है

 $(document).ready(function () {
    maintainScrollPosition();
});

function pageLoad() {
    maintainScrollPosition();
}

function setScrollPosition(scrollValue) {
    $('#<%=hfScrollPosition.ClientID%>').val(scrollValue);
}

function maintainScrollPosition() {
    $("#dvScroll").scrollLeft($('#<%=hfScrollPosition.ClientID%>').val());
}

यहाँ मेरा एएसपीएक्स है

 <asp:HiddenField ID="hfScrollPosition" Value="0" runat="server" />
    <div  id="dvScroll" class="largeGridScroll" onscroll="setScrollPosition(this.scrollLeft);">
0
Junior Cortenbach 9 अगस्त 2019, 04:38