How to call postback using javascript on ASP.NET f

2020-04-12 07:21发布

问题:

I have a web form with textbox and button. I want after "ENTER" key click on textbox postbak form.

I am using next code:

onkeypress=" if(event.keyCode==13)
 { alert(2);
WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions('ctl00$ContentPlaceHolder1$btnSearch', '', true, '', '', false, false));
alert(2); 
return false;}

where WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions('ctl00$ContentPlaceHolder1$btnSearch', '', true, '', '', false, false));

is javascript code for button event onclick.

I get two alerts, but postback doesnot happen.

Any ideas what is wrong?

回答1:

ASP.NET already creates a client side javascript method __doPostBack to support postback.

Example: __doPostBack('__Page', 'MyCustomArgument');



回答2:

Easier way of doing it is to enclose the controls in a panel and use defaultbutton attribute on the panel, like this:

<asp:Panel ID="pan1" runat="server" DefaultButton="btnSave">
    <asp:TextBox ID="txt1" runat="server" />
    <asp:Button ID="btnSave" runat="server" />
</asp:Panel>

Then when you press 'enter' after entering the value in the text box it will behave as if you clicked on the btnSave button.