我正在使用ASP.NET框架。在我的欢迎页面中(在用户登录后)我想自定义段落文本以包含他们的登录信息。例如:
<p>
Welcome to the website!
</p>
代码目前是什么,但我想要的是:
<p>
Welcome <var=Username> to the website!
</p>
现在显然这是不正确的,我没想到会这样。我只想展示我想做的事情。我想过以某种方式使用JavaScript来实现这一点,但这似乎有点过于复杂。我的变量“Username”来自其他地方的.cs文件中的另一个类。如何将该变量嵌入我的<p></p>
?
答案 0 :(得分:4)
在标记中添加标签:
<p>
Welcome <asp:Label ID="lblUsername" runat="server" /> to the website!
</p>
然后在后面的代码中:
protected void Page_Load(object sender, EventArgs e)
{
lblUsername.Text = "username"; // set to the username variable here
}
答案 1 :(得分:3)
您可以使用<asp:Literal
代替您的标记,然后在Page_Load中设置所需的值ltUsername.Text = UserName;
<p>Welcome <asp:Literal ID="ltUsername" runat="server" /> to the website</p>
并在您的代码中
protected void Page_Load(object sender, EventArgs e)
{
ltUsername.Text = Username; // whatever that may be
}
文字只输出您提供的内容 - 而asp:Label会将您的文本包装在<span>
标记中,并添加额外的标记,这可能会造成混淆。出于这个原因,我只对实际的asp:Label
元素(与<label>
相关联的元素)使用input
。
答案 2 :(得分:2)
如果该变量来自另一个类,您将需要一种以某种方式存储它的方法。一种方法是将其放入会话中。
所以在你的“其他”课程中
Session["myVariable"] = variable;
然后在您要将“欢迎”变量设置为“网站”的页面中,您执行以下操作:
首先,创建一个属性:
public string name {get;set;}
然后,在你的page_load中:
protected void Page_Load(object sender, EventArgs e)
{
name = Session["myVariable"]
}
然后只需将以下代码放在.aspx页面中:
Hello <%= name %> , welcome to the website!
或者您也可以这样做:
的Page_Load:
Label1.Text = Session["myVariable"].ToString();
的.aspx:
Hello, <asp:Label ID="Label1" runat="server" /> welcome to the website.
答案 3 :(得分:1)
in Html
<p>
Welcome <asp:Label ID="lblUserName" runat="server"></asp:Label> to the website!
</p>
然后在Page_Load <。p>中的.cs文件中
lblUserName.Text = {The User's First Name}
如果你发布了更多关于你如何进行身份验证的代码,那么我可以用实际代码替换{The Users First Name}
。现在只需使用它来输入FirstName代码
答案 4 :(得分:1)
您必须使用服务器端控件,即Label,Textbox并执行:
<asp:Label id="username" runat="server" />
上述一方进入你的标记部分。
然后在您的Page_Load
事件或填充.cs文件中的用户名属性的位置,您可以执行以下操作:
username.Text = User;
答案 5 :(得分:0)
我建议您浏览一个教程网站,熟悉语法和结构。一个好的起点就在这里,http://www.w3schools.com/aspnet/default.asp(天哪,我可以想象对此的反馈;)
您要完成的任务非常简单,您也可以安装一些随Visual Studio一起提供的模板(如果有的话)......有些正是您要实现的目标。
祝你好运!答案 6 :(得分:0)
我想说最好的方法是使用:
var page=HttpContext.Current.Handler as Page;
比:
page.Header.Controls.Add(literalcontrol);
所以你可以在一个类中使用它,而不需要在后面的每个代码上写它。