जावास्क्रिप्ट में बटन क्लिक पर पोस्टबैक कैसे रोकें


मेरे पास एक अंक पैड है, जब भी मैं कोई बटन दबाता हूं तो यह पृष्ठ पर वापस पोस्ट हो जाता है तो मैं इसे कैसे रोक सकता हूं ?? कृपया क्या कोई मेरी मदद कर सकता है….यदि आप कर सकते हैं तो मुझे कोड भेजें।

समाधान 1

संबंधित बटन के लिए एएसपीएक्स कोड पर लिखें

जावास्क्रिप्ट
OnClientClick="return false;"

इससे पेज पर वापस पोस्ट करना बंद हो जाएगा. यदि आपको कुछ फ़ंक्शन कॉल करने की आवश्यकता है, जैसे सत्यापन आदि, तो आप वह भी कर सकते हैं।

जावास्क्रिप्ट
OnClientClick="MyFunction(); return false;"

एक फ़ंक्शन को परिभाषित करें जो कुछ वेरिएबल में मान संग्रहीत करता है

जावास्क्रिप्ट
MyFunction()
{
myVariable = myVariable + "number you got from button";
return false;
}

यदि आपको पोस्टबैक को सशर्त रोकने की आवश्यकता है तो आप इस तरह लिख सकते हैं

जावास्क्रिप्ट
OnClientClick="MyFunction();"

और फ़ंक्शन को इस प्रकार परिभाषित करें

जावास्क्रिप्ट
function MyFunction() 
{
if (condition == true)
return false;
else
return true;
}

इस मामले में, यदि शर्त सत्य है, तो यह वापस पोस्ट नहीं होगा अन्यथा यह वापस पोस्ट हो जाएगा।

उम्मीद है कि आपकी मदद होगी। यदि ऐसा होता है, तो इसे समाधान/अपवोट के रूप में चिह्नित करें।

धन्यवाद
मिलिंद

समाधान 2

आशा है यह आपकी मदद करेगा

सी#
<asp:button id="btnID" runat="server" text="Click Me" onclientclick="return false;"  />

समाधान 3

नमस्ते,

मेरी समझ के अनुसार, यदि आपकी आवश्यकता एएसपी बटन क्लिक इवेंट को कॉल न करने से रोकने की है, तो आप बटन के अपने ऑनक्लाइंटक्लिक पर रिटर्न फाल्स का उपयोग कर सकते हैं।

<asp:button runat="server" ...="" onclientclick="return false"  />

अगर मेरी समझ गलत हो तो मुझे बताएं.

समाधान 4

चरण 1: एएसपीएक्स पेज में

a) हेड टैग में
————————————————– ——————————–

एक्सएमएल
<script src="Other/JScript.js" type="text/javascript"></script>

    <script src="JSTemplate/jquery-latest.min.js" type="text/javascript"></script>

    <style>
        .btn
        {
            border: solid 1px gray;
            border-radius: 3px;
            padding: 5px;
            vertical-align: middle;
            text-align: center;
            text-decoration: none;
            color: #000;
        }
    </style>




----------------------------------------------------------------------------------

b) in body tag
---------------------------------------------------------------------------------

 <div>
        <br />
        Operation to be performed:  <asp:textbox id="txtOperation" runat="server" class="btn" xmlns:asp="#unknown">
            Width="20" ReadOnly="true"></asp:textbox>
        <br />
        <asp:textbox id="txtBoxInput" runat="server" width="200" height="25" xmlns:asp="#unknown"></asp:textbox>
        <br />
        <br />
        <a href="javascript:TraceClick('1', 'idA1');" id="idA1" class="btn">1</a> <a href="javascript:TraceClick('2', 'idA2');">
            id="idA2" class="btn">2</a> <a href="javascript:TraceClick('3', 'idA3');" id="idA3">
                class="btn">3</a> <a href="javascript:TraceClick('4', 'idA4');" id="idA4" class="btn">
                    4</a> <a href="javascript:TraceOperator('+', 'idAPlus');" id="idAPlus" class="btn">+</a>
        <a href="javascript:TraceOperator('-', 'idA4Minus');" id="idA4Minus" class="btn">-</a>
        <br />
        <br />
        <br />
        <asp:button runat="server" id="btnFetchValueinCodebehind" text="Get Value In code behind" xmlns:asp="#unknown">
            OnClick="btnFetchValueinCodebehind_Click" />
        <br />
    </asp:button></div>

---------------------------------------------------------------------------------

Step 2: in JScript file
-----------------------------------------------------------------------------

<pre lang="cs">function TraceClick(new_Value, objID) {

      document.getElementById(objID).style.color = 'red';
      var finalVal='';

      if($("#txtBoxInput").val().length>0)
      {
         var newVal=parseInt(new_Value);
         var  vInput=parseInt($("#txtBoxInput").val());

         if($("#txtOperation").val()=="+")
         {

             finalVal = vInput + newVal;
             $("#txtBoxInput").val(finalVal);

         }
         else if($("#txtOperation").val()=="-")
         {

             finalVal = vInput - newVal;
             $("#txtBoxInput").val(finalVal);

         }
        else
        {

        $("#txtBoxInput").val($("#txtBoxInput").val().concat(new_Value));

        }


      }
      else
      {
         $("#txtBoxInput").val(new_Value);
      }

}
function TraceOperator(new_Value, objID) {
   document.getElementById(objID).style.color = 'red';
     $("#txtOperation").val(new_Value);

}

————————————————– ———————-
चरण 3: पृष्ठ के पीछे कोड में
————————————————– ———————-

सी#
protected void btnFetchValueinCodebehind_Click(object sender, EventArgs e)
  {
      string strval = txtBoxInput.Text.ToString();
      Response.Write("here u get value in code behind page: "+strval);
  }

मुझे बताएं कि क्या यह अवधारणा आपकी मदद कर सकती है..
अच्छी किस्मत

コメント

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