Anilkumar
Anilkumar

Reputation: 85

printing some HTML in a string in Asp.net

i have some html content and i stored it in string variable and i want to print it directly.Is there any way in c# ?i have a javascript code which is not working

string emailbody="HTML i need to send";
Page.RegisterStartupScript("StatusMessage", "<SCRIPT LANGUAGE=\"JavaScript\">function     printsheet(" + emailbody + "){var win = window.open('mywindow', 'left=0', 'top=0')var html =   Zstring; win.document.open()win.document.write(html);win.print();}</Script>");

Upvotes: 1

Views: 7398

Answers (1)

Aristos
Aristos

Reputation: 66649

You have many ways to do that.

One way, make the string public

public string emailbody="HTML i need to send";

and on aspx page you render it as:

<%=emailbody%>

One other way is to use a Literal control and render it there. When you have UpdatePanel this is the only way.

Eg, you place the Literal on page, on the point you wish to render your text as:

<asp:Literal runat="server" id="txtRenderOnMe" />

and on code behind you type:

txtRenderOnMe.Text = "HTML i need to send";

Now, in your case the issue is that you render a string on the javascript code without the quotas as the other jesse point out on their comments.

string emailbody="HTML i need to send";
Page.RegisterStartupScript("StatusMessage", "<script language=\"JavaScript\">function     printsheet('" + emailbody + "'){var win = window.open('mywindow', 'left=0', 'top=0')var html =   Zstring; win.document.open()win.document.write(html);win.print();}</script>");

Upvotes: 4

Related Questions