954,595 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Button to open a new browser window

Hello ,
I am using web matrix and c#.
I want to open a new browser from a button click.
How can I do that?
Thanks in advance.
Steve

steven
Newbie Poster
1 post since Nov 2003
Reputation Points: 10
Solved Threads: 0
 

One way is with a JScript function in the OnClick event for a button.

<form id="Form1">
<INPUT Type="button" OnClick="window.open('http://www.google.ca')" value="enter">
</form>


That help?

Paladine
Master Poster
Team Colleague
824 posts since Feb 2003
Reputation Points: 211
Solved Threads: 27
 

sadly you have missed the point of asp.net

you are using traditional html tags which renders asp.net useless.

read up on server controls.



--
in the page load add:
button1 .Attributes.Add("onclick", "whatEverYouWantTheJavaSciptToDo");


i think this is right

if you wanna learn .net

buy ASP.NET for Beginners using c# from WROX

jack
www.ansariltd.com

jackster
Light Poster
32 posts since Jun 2004
Reputation Points: 10
Solved Threads: 1
 
you are using traditional html tags which renders asp.net useless. read up on server controls.


I would consider myself a professional ASP.NET Web Developer, and I use HTML over ASP.NET Controls wherever I can. This is taught; the less controls, the less server overhead. Instead of performing countless things to output a simple link, I rather use the anchor tag. If I have a button on my page which does nothing server side, why add the extra overhead of a server control? It's pointless.

Furthermore, you can control most standard html controls with ASP.NET, just give them an ID="" and runat="server" in their tag.

Tekmaven
Software Architect
Moderator
1,274 posts since Feb 2002
Reputation Points: 322
Solved Threads: 28
 

sadly you have missed the point of asp.net

you are using traditional html tags which renders asp.net useless.

read up on server controls.

-- in the page load add: button1 .Attributes.Add("onclick", "whatEverYouWantTheJavaSciptToDo");

i think this is right

if you wanna learn .net

buy ASP.NET for Beginners using c# from WROX

jack www.ansariltd.com


Actually I didn't think I missed the point. The question was simple and answered. No requirements were stated. And besides thatOnClick could have contained ="Load_NewPage()" which points to a Load_NewPage() function (or method) in the C# code behind. I just gave the suggestion as a general means of doing it.

But then again, he can use whatever method he wants!

:cool:

Paladine
Master Poster
Team Colleague
824 posts since Feb 2003
Reputation Points: 211
Solved Threads: 27
 

point taken :)

jackster
Light Poster
32 posts since Jun 2004
Reputation Points: 10
Solved Threads: 1
 

Thanks ... haha. :cool:

Paladine
Master Poster
Team Colleague
824 posts since Feb 2003
Reputation Points: 211
Solved Threads: 27
 

Well, a new article on MSDN came out yesturday, titled Improving ASP.NET Performance , and I'll quote it:

---
Use Server Controls Where Appropriate

The HTTP protocol is stateless; however, server controls provide a rich programming model that manages state between page requests by using view state. Server controls require a fixed amount of processing to establish the control and all of its child controls. This makes server controls relatively expensive compared to HTML controls or possibly static text. Scenarios where server controls are expensive include the following: Large payload over low bandwidth. The more controls that you have on a page, the higher the network payload is. Therefore, multiple controls decreases the time to last byte (TTLB) and the time to first byte (TTFB) for the response that is sent to the client. When the bandwidth between client and server is limited, as is the case when a client uses a low-speed dial-up connection, pages that carry a large view state payload can significantly affect performance.
View state overhead. View state is serialized and deserialized on the server. The CPU effort is proportional to the view state size. In addition to server controls that use view state, it is easy to programmatically add any object that can be serialized to the view state property. However, adding objects to the view state adds to the overhead. Other techniques such as storing, computed data or storing several copies of common data adds unnecessary overhead.
Composite controls or large number of controls. Pages that have composite controls such as DataGrid may increase the footprint of the view state. Pages that have a large number of server controls also may increase the footprint of the view state. Where possible, consider the alternatives that are presented later in this section.

When you do not need rich interaction, replace server controls with an inline representation of the user interface that you want to present. You might be able to replace a server control under the following conditions: You do not need to retain state across postbacks.
The data that appears in the control is static. For example, a label is static data.
You do not need programmatic access to the control on the server-side.
The control is displaying read-only data.
The control is not needed during postback processing.
Alternatives to server controls include simple rendering, HTML elements, inline Response.Write calls, and raw inline angle brackets (<% %>). It is essential to balance your tradeoffs. Avoid over optimization if the overhead is acceptable and if your application is within the limits of its performance objectives.

---

Now, if this doesn't illustrate what I've said, I'm not sure if anything could ;-).

Tekmaven
Software Architect
Moderator
1,274 posts since Feb 2002
Reputation Points: 322
Solved Threads: 28
 

dfdf

tidustr
Newbie Poster
1 post since Jun 2007
Reputation Points: 10
Solved Threads: 0
 

without going into too much argument over html vs asp.net controls etc (and I also use asp.net controls sparingly) I think you all missed the point of the original question :) haha

I took it as he wanted to know how to open a new window not the button click event. So in answer to the original question - to open a link in a new browser window you need to set "target=_blank". That is if you are using an anchor (or hyperlink if you insist on them - but i strongly suggest you try an html anchor and some css). Otherwise use the window functions in javascript if you are going that way.
:)

f1 fan
Posting Whiz in Training
279 posts since Jan 2006
Reputation Points: 26
Solved Threads: 11
 

One way is with a JScript function in the OnClick event for a button.

<form id="Form1">
<INPUT Type="button" OnClick="window.open('http://www.google.ca')" value="enter">
</form>

That help?


Thanks a lot for your help man ... You posted solution in 2003 about opening new window through ASP .net button ... I was so frustrated because of that button problem but your solution helped me .. thanks a lot

humhaingaurav
Newbie Poster
4 posts since Apr 2008
Reputation Points: 10
Solved Threads: 0
 

I have a textbox that the user can enter a URL in, I then have a Test URL button that calls:

protected void btnTestURL_Click(object sender, EventArgs e)
        {
            string sTargetURL = "http://" + tbWebsite.Text.ToLower();
            Response.Write("<script>open('" + sTargetURL + "');</script>");
        }


Lee

leester39
Newbie Poster
1 post since Aug 2008
Reputation Points: 10
Solved Threads: 0
 

How can I open another web page by clciking a button?

k4kasun
Newbie Poster
10 posts since Jan 2009
Reputation Points: 10
Solved Threads: 0
 

training_room_6.jpg


ok
TagCloud.zip

okkkkkkkk

Attachments training_room_6.jpg 10.28KB TagCloud.zip (15.34KB)
dbeura
Newbie Poster
7 posts since Sep 2009
Reputation Points: 10
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You