8

In my asp.net page, I have three text boxes and one button.
First two text boxes are being used to get the value from the user and third one is being used to show the sum of first two boxes.

I am calling a javascript function to sum the values and show the result value on OnClientClick event of that BUTTON.

JS function is working fine but when I am pressing button to get the sum, it shows the result in third text box and just then the page is being post-back and result value becomes disappear from the third text box.

Why the post-back is called by the button?
I don't want page to be post-backed on click of submit button.

Any suggestion is appreciated.

Ravindra Kumar
  • 601
  • 1
  • 5
  • 13

3 Answers3

25

OnClientClick="SomeMethod()" event of that BUTTON, it return by default "true" so after that function it do postback

for solution use

//use this code in BUTTON  ==>   OnClientClick="return SomeMethod();"

//and your function like this
<script type="text/javascript">
  function SomeMethod(){
    // put your code here 
    return false;
  }
</script>
sangram parmar
  • 8,462
  • 2
  • 23
  • 47
5

The above solutions must work. However you can try this one:

OnClientClick="return SomeMethod();return false;"

and remove return statement from the method.

Hashbrown
  • 12,091
  • 8
  • 72
  • 95
Pushpendra
  • 814
  • 1
  • 6
  • 17
  • 4
    What is a use of `return false;` in this answer, I believe it will never executes as return SomeMethod() will stop rest of execution after returning value – Abhay Feb 08 '18 at 10:01
2
<asp:Button ID="btnGet" runat="server" Text="Get" OnClick="btnGet_Click" OnClientClick="return callMethod();" />
<script type="text/javascript">
    function callMethod() {
        //your logic should be here and make sure your logic code note returing function
        return false;
}
</script>
Homer
  • 7,594
  • 14
  • 69
  • 109
sangram parmar
  • 8,462
  • 2
  • 23
  • 47