asp.net - 从 .NET 中的引导程序中获取输入复选框标记的值
问题描述
我正在尝试将 Bootstrap ( devoops.me
) 中的复选框与 ASP.NET 一起使用。
在页面上我有:
<div class="row">
<div class="col-lg-12">
<div class="checkbox">
<label>
<input type="checkbox" name="testme" />some text for checkbox to choose
<i class="fa fa-square-o"></i>
</label>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"/><br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</div>
在服务器端:
protected void Button1_Click(object sender, EventArgs e)
{
HtmlInputCheckBox chk = (HtmlInputCheckBox)this.Form.FindControl("testme");
if (chk.Checked == true)
{
Label1.Text = "YES it's checked";
}
}
但我得到的都是空的。
我不想使用 jQuery 或 JavaScript。有可能吗?
有人可以帮助我吗?
解决方案
FindControl
搜索 ASP.NET 控件。为了将复选框注册为 asp.net 控件,请提供 id 并添加runat="server"
属性。
<div class="row">
<div class="col-lg-12">
<div class="checkbox">
<label>
<input type="checkbox" id="testme" runat="server" />some text for checkbox to choose
<i class="fa fa-square-o"></i>
</label>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"/><br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</div>
服务端代码可以简化如下:
protected void Button1_Click(object sender, EventArgs e)
{
if (testme.Checked == true)
{
Label1.Text = "YES it's checked";
}
}
由于复选框是一个注册控件,所以在后面的代码中可以直接访问。
推荐阅读
- javascript - 无法在 Django 中显示表单
- c++ - 仅具有静态方法的模板类使用 .cpp 文件实现给出错误
- javascript - 是否可以使用 Highcharts 在区域图上设置 upColor?
- amazon-web-services - 如何将 mysql 数据库集成到 AWS AMPLIFY REST API
- php - 根据传递第一个数组中的一个值的另一个数组在数组中搜索值
- asp.net - 如何根据下拉列表值启用/禁用文本框
- visual-studio - 奇怪的 Clickonce 签名行为
- react-redux - 使用 next.js 进行 SSR 时如何处理身份验证令牌?
- python - 如何从 peewee 数据库中获取行数?
- go - 如何接收要插入的 json