चाइल्ड पेज में बटन क्लिक इवेंट ट्रिगर के बाद पैरेंट पेज को रीफ्रेश करना कैसे रोकें


मैंने एक बूटस्ट्रैप मोडल पॉपअप बॉक्स डिज़ाइन किया है जो मूल पृष्ठ में एक बटन पर क्लिक करने के बाद खुलेगा। मैं मोडल में कुछ चीजें करना चाहता हूं और इसे बंद करना चाहता हूं लेकिन चाइल्ड पेज पर एक बटन क्लिक करने के बाद पैरेंट पेज रीफ्रेश हो जाता है और मोडल फॉर्म सबमिट हो जाता है। मैंने **OnClientClick=’return false;’** का प्रयास किया लेकिन यह बटन इवेंट को सक्रिय करना बंद कर देता है।
क्या कोई मुझे बता सकता है कि इसे कैसे हल किया जाए

**कोड**

**मूल पृष्ठ**

एचटीएमएल
<a href=\"/abcd/abcd1/abcd2.aspx?abcd3=" + Eval("abcd4") + "&abcd5=" + Eval("abcd6") + "&abcd7=" + Eval("abcd7") + "&abcd8=" + Eval("abcd8") + "\" class='li-modal'>"+ Eval("abcd9") +  "</a>

**बाल पृष्ठ**

एएसपी.नेट
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" >
        <title>ABCDEF</title>
        <script language="javascript" type="text/javascript" src="/abcdef/xyzed/Script.js"></script>
       
    </head>
    <body scroll="no">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal">X</button>    
        </div>
        <div class="modal-body" style="margin-left:-140px;">
      <div class="panel panel-default">
        <div class="panel-body">
          <form id="form1" runat="server">
            <table class="inputForm" cellspacing="0" cellpadding="0" border="0" style="width: 100%; height: 100%; table-layout: fixed">
                <thead>
                    <tr height="18">
                        <td>ABCDEF Order</td>
                    </tr>
                </thead>
                <tfoot>
                    <tr>
                        <td style="vertical-align: middle">
                        
                    <table>
                        <tfoot>
                        <tr>
                            <td>XYZED no:</td>
                            <td>
                                <asp:TextBox ID="No" runat="server" Width="50px" EnableViewState="False" />
                            </td>
                            <td>
                                <asp:Button ID="xyz1" runat="server" Text="|<" OnClick="xyz1_Click"  autopostback="false"/>
                                <asp:Button ID="xyz2" runat="server" Text="<" OnClick="xyz2_Click" OnClientClick="return false;"  />
                                <asp:Button ID="xyz3" runat="server" Text=">" OnClick="xyz3_Click" OnClientClick="return false;" />
                                <asp:Button ID="xyz4" runat="server" Text=">|" OnClick="xyz4_Click" OnClientClick="return false;" />
                            </td>
                        </tr>
                        </tfoot>
                    </table>

                        </td>
                    </tr>
                    <tr class="footerrow" height="24">
                        <td align="right">
                            <asp:Button ID="btnSubmit" CssClass="button" runat="server" Text="Ok" OnClick="btnSubmit_Click">
                            
                            </asp:Button><input class="button" id="btnCancel" onclick=" top.window.close();" type="button"
                                value="Cancel" name="btnCancel" /></td>
                    </tr>
                </tfoot>
            </table>
        </form>
        </div>
      </div>
      <div class="modal-footer">
        
      </div>
    </div>
        
    </body>

        
        
    </html>

    </asp:Content>

**चाइल्डपेज.सीएस**

सी#
protected void Page_Load(object sender, EventArgs e)
    {
        No = long.Parse(Request.QueryString["No"]);
        RuleNo = long.Parse(Request.QueryString["RuleNo"]);
        if (!IsPostBack)
        {
            No.Text = ((long)oldRuleNo).ToString();
        }
    }


    protected void xyz1_Click(object sender, EventArgs e)
    {
        No.Text = "1";

    }

xyz1_क्लिक बटन पेरेंट पेज रिफ्रेशिंग पर क्लिक करने के बाद। मैं इसे कैसे रोरूं । कृपया मदद करे

मैंने क्या प्रयास किया है:

मैंने **OnClientClick=’return false;’** का प्रयास किया लेकिन यह बटन इवेंट को सक्रिय करना बंद कर देता है।

समाधान 1

एएसपीनेट इसी तरह काम करता है, आप उन चीज़ों पर क्लिक करते हैं जो एक पोस्टबैक का कारण बनती हैं जो आपके सर्वर-साइड कोड को चलाने की अनुमति देने वाले पेज को फिर से अनुरोध करती है। वह कोड नियंत्रण की स्थिति में संशोधन कर सकता है और अद्यतन HTML को दिखाने के लिए ब्राउज़र पर भेजा जाता है। यदि आप चाहते हैं कि पेज रीफ्रेश किए बिना चीजें हों तो आपको अजाक्स का उपयोग करना होगा। आप प्रासंगिक नियंत्रणों को अपडेटपैनल के अंदर रखकर अपने लिए ऐसा करने के लिए एएसपीनेट प्राप्त कर सकते हैं, इसलिए यदि आप अपडेटपैनल के साथ अपने बटन और “नहीं” लेबल वाली तालिका को लपेटते हैं तो .नेट आपके पोस्टबैक को प्रेरित करने के लिए अजाक्स का उपयोग करेगा और पेज रीफ्रेश से बचने के लिए लौटाए गए HTML को अपडेट करने के लिए फिर से AJAX का उपयोग करें।

अपडेटपैनल क्लास (सिस्टम.वेब.यूआई) | माइक्रोसॉफ्ट डॉक्स[^]

समाधान 3

मैंने कोशिश की OnClientClick=’वापसी झूठी;’ मेरे बटन पर क्लिक करें और इसने मेरे लिए काम किया।
पूर्व:
<एएसपी: बटन आईडी = "बटन 1" रनैट = "सर्वर" ऑनक्लाइंटक्लिक = "झूठा लौटाएं" टेक्स्ट = "पॉपअप दिखाएं" क्लास = "बीटीएन बीटीएन-डेंजर" डेटा-लक्ष्य = "#लॉगिनमोडल" डेटा-टॉगल = "मोडल">

इस समाधान का उपयोग करें, यह मेरे लिए काम करता है और जब मैं बटन पर क्लिक करूंगा तो यह रीफ्रेश नहीं होगा और यह दिखाई देगा
मोडल पॉपअप और ताज़ा नहीं किया गया

コメント

タイトルとURLをコピーしました