Clicking Back Browser UpdatePanel - c#

I have an issue where by I click on a asp Button which opens up a UpdatePanel pop up with two other buttons on, to confirm or to cancel the submit request basically.
Now I do the follow:-
Click "Submit" then it opens up the popup (which is actually a UpdatePanel made to look like a popup) I then click on Cancel with performs a _Click to make the asp Panel within the UpdatePanel to .Visible = false. I then click on a different link and click my back button on my browser. The state of the page is with the popup on with the Confirm and Cancel buttons, but the buttons do not do anything once clicked.

Related

WPF form controls(Next button, cancel button) gets disabled in background

I've a WPF page that contains next and cancel navigation to subsequent pages. Next button gets enabled based on certain validations. On click of another button in the page, another .exe gets opened and the 1st page goes to background. After finishing the tasks in opened exe, if the 1st page is not clicked, Next button and close button stay disabled. Once I click on the form, they get enabled.
I checked that if the 1st form is in background, CanExecuteChanged function gets called only when the form is clicked manually.
How to make the 1st form active again after the 2nd exe is closed?

onclick functionality of a button in a page should be called when user click on 'Enter' button on the keyboard

I have a C# .net application in which 3 text boxes and 1 button is there. When I fill the form and click on 'Enter' button on the keyboard, the button onclick functionality is not called by default. I need to call the button onclick functionality when the user clicks 'Enter' button on the keyboard. (These controls are in a usercontrol and it is populating in an aspx page).
Why its like this and how can I resolve it?
I am using asp:Wizard control here.
The control asp:Panel can set the attribute "DefaultButton" to the ID of a button, that will be triggered when pressing enter. Could that be of help here?
http://www.w3schools.com/aspnet/prop_webcontrol_panel_defaultbutton.asp

Preventing OnClientClick to newtab of Button to trigger Other clicks on the page

I am using a Button in Web form and onclick event should open a report in new tab. I am using onclientclick property of Button but it enables all the other Button or Radio Button to redirect in new tab. How to prevent this.
Use this code on Button click instead of OnClientClick
btnPrint.Attributes.Add("onclick", "window.open('yourpage.aspx'); return false;");
If you enable OnClientClick to open in a new tab then you must revert this functionallity back after the window was opened.
You've got 2 options
on click any other button on the window
setTimeout() after few moments
Use this function / code within:
function ResetTarget() {
window.document.forms[0].target = '';
}

Preventing a button from responding to 'Enter' in ASP.net

I have a master template that all the pages on my site use. In the template there is an empty panel. In the code-behind for the page an imagebutton is created in the panel dynamically in my Page_Load section (makes a call to the DB to determine which button should appear via my controller).
On some pages that use this template and have forms on them, pressing the Enter key fires the click event on this imagebutton rather than the submit button in the form. Is there a simple way to prevent the imagebutton click event from firing unless it's clicked by the mouse? I'm thinking a javascript method is a hack, especially since the button doesn't even exist in the master template until the button is dynamically created on Page_Load (this is ugly since I can't simply do <% =btnName.ClientId %> to refer to the button's name in my aspx page).
I tried setting a super-high tabindex for the image button and that did nothing. Also set the button to be the DefaultButton in its panel on the master template but that did not work either. Moreover, I don't want to add a property to all of my pages that use this template (there are hundreds). It would be optimal to find a solution that works globally from my master template.
I'll try to show our example here:
We have a button on the top of each page in our system that lets you star the page as one of your favorites, sort of a server-side bookmark system. When the page loads it looks to see if the page is one of your favorites or not and then shows a gold star if it is, and a gray star if it is not. Clicking the imagebutton of a star toggles the page favorite status.
In my master template (FullMenu.master) I have this panel
<asp:Panel runat="server" ID="pnlFavorite" style="display:inline;"></asp:Panel>
Next there is a class which creates the button and adds it to the panel on the master template:
public void InsertStarButton()
{
CreateStarButton();
pnl.Controls.Add(bright);
}
and
private void CreateStarButton()
{
bright = new ImageButton();
bright.ImageUrl = "~/resources/images/star.png";
bright.Height = new Unit(12, UnitType.Pixel);
bright.ID = "btnStar";
}
What I tried earlier, that didn't work, was in InsertStarButton() I added a line pnl.DefaultButton = "btnStar" but that didn't change anything on the page. Even if I had the cursor blinking inside a text box in the form on the page the star button would fire its click event if the Enter key was pressed.
http://weblogs.asp.net/scottgu/archive/2005/08/04/421647.aspx
Pressing ENTER on a single-line textbox on a form will submit the form. That's how it works.

ASP.Net & jQuery - closing a popup

I want to close a ShadowBox popup when the user clicks a button. The popup is showing a separate page in an Iframe.
This works fine with a clients-side event on the Cancel button control, e.g.
OnClientClick="javascript:parent.Shadowbox.close();"
The Ok button, however, has a server-side event, because data needs to be saved. When I define both an OnClick and the OnClientClick handler from above, the IFrame is closed and the server-side event handler never fires.
I tried to remove the OnClientClick event handler from the markup and to use the ClientScriptManager to accomplish this, as in
Page.ClientScript.RegisterStartupScript(this.GetType(),
"Close", "parent.Shadowbox.close();", true);
Apparently because the buttons are in an UpdatePanel, the script does not get registered, and it does not appear in the Reponse stream. The IPanel stays open.
How can I do this?
When you're using the MS AJAX controls, you need to register your scripts with the ScriptManager, not ClientScript.

Categories

Resources