I need that some html in the area in the asp.net page that i am coding, is changed according to a string variable. I was thinking about creating a label, and then change the text on it.
But the string variable contains something like:
<h2><p>Notify:</p> alert</h2>
So, I don't feel that give this to a label text is a good idea
How i can do? Using response.write? If I use response.write, my added code will be at the beginning of the html source, how i can tell him to add it in a specific ?
Thank you
You can also use pageMethods in asp.net. So that you can call javascript functions from asp.net functions. E.g.
[WebMethod]_x000D_
public static string showTxtbox(string name)_x000D_
{_x000D_
return showResult(name);_x000D_
}_x000D_
_x000D_
public static string showResult(string name)_x000D_
{_x000D_
Database databaseObj = new Database();_x000D_
DataTable dtObj = databaseObj.getMatches(name);_x000D_
_x000D_
string result = "<table border='1' cellspacing='2' cellpadding='2' >" +_x000D_
"<tr>" +_x000D_
"<td><b>Name</b></td>" +_x000D_
"<td><b>Company Name</b></td>" +_x000D_
"<td><b>Phone</b></td>"+_x000D_
"</tr>";_x000D_
_x000D_
for (int i = 0; i < dtObj.Rows.Count; i++)_x000D_
{_x000D_
result += "<tr> <td><a href=\"javascript:link('" + dtObj.Rows[i][0].ToString().Trim() + "','" +_x000D_
dtObj.Rows[i][1].ToString().Trim() +"','"+dtObj.Rows[i][2]+ "');\">" + Convert.ToString(dtObj.Rows[i]["name"]) + "</td>" +_x000D_
"<td>" + Convert.ToString(dtObj.Rows[i]["customerCompany"]) + "</td>" +_x000D_
"<td>"+Convert.ToString(dtObj.Rows[i]["Phone"])+"</td>"+_x000D_
"</tr>";_x000D_
}_x000D_
_x000D_
result += "</table>";_x000D_
return result;_x000D_
}
_x000D_
Here above code is written in .aspx.cs page. Database is another class. In showResult() function I've called javascript's link() function. Result is displayed in the form of table.
Use a literal control and write your html like this:
literal1.text = "<h2><p>Notify:</p> alert</h2>";
You can go with the literal control of ASP.net or you can use panels or the purpose.
If you really don't want to use any server controls, you should put the Response.Write
in the place you want the string to be written:
<body>
<% Response.Write(stringVariable); %>
</body>
A shorthand for this syntax is:
<body>
<%= stringVariable %>
</body>
If you want something lighter than a Label or other ASP.NET-specific server control you can just use a standard HTML DIV or SPAN and with runat="server", e.g.:
Markup:
<span runat="server" id="FooSpan"></span>
Code:
FooSpan.Text = "Foo";
You should really use the Literal ASP.NET control for that.
ASPX file:
<h2><p>Notify:</p> <asp:Literal runat="server" ID="ltNotify" /></h2>
ASPX.CS file:
ltNotify.Text = "Alert!";
Source: Stackoverflow.com