我是 ASP 和 C# 的新手,需要一些有关 ASPX 中的 C# 代码块的建议。我尝试根据复选框值更改标签文本。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Page Language="C#" %>
<html>
<body>
<form id="form1" runat="server">
<asp:CheckBox runat="server" id="CheckBox1" AutoPostBack="True" Checked="True"></asp:CheckBox>
<% if (CheckBox1.Checked==True) {%>
<asp:Label id="Label1" runat="server" Text="Checked"></asp:Label>
<% } else {%>
<asp:Label id="Label1" runat="server" Text="Not Checked"></asp:Label>
<% }%>
</form>
</body>
</html>
它不起作用,我不确定这样做是否正确。
最佳答案
最好将您的标记和代码分成 2 个不同的文件(例如 Default.aspx 和 Default.aspx.cs)。 要更改标签文本,请尝试处理页面的加载事件。
默认.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<body>
<form id="form1" runat="server">
<asp:CheckBox runat="server" id="CheckBox1" AutoPostBack="True" Checked="True"></asp:CheckBox>
<asp:Label id="Label1" runat="server"></asp:Label>
</form>
</body>
</html>
Default.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
Label1.Text = CheckBox1.Checked ? "Checked" : "Not checked";
}
}
关于c# - 检查复选框值的代码块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27654457/