【问题标题】:Checkbox control in Asp.NetAsp.Net 中的复选框控件
【发布时间】:2010-04-09 02:41:30
【问题描述】:

我正在尝试获取一个人的当前和永久地址。

如果当前地址和永久地址相同,则表示无需输入两次相同的信息。我使用一个复选框来表示地址是相同的。

如果复选框被选中,我想将当前地址放入永久地址控件。我该怎么做?

【问题讨论】:

  • 你还有这个问题吗?

标签: c# asp.net checkbox


【解决方案1】:

您可以使用服务器端代码 (C#) 或客户端代码(JavaScript 或 jQuery)以多种方式实现此功能。如果没有看到您当前构建的内容,很难告诉您最适合的是什么...下面是一个示例,说明如何在选中复选框的情况下使用来自另一个文本框的数据填充文本框...

服务器端示例

C#

protected void MyCheckBox_CheckedChanged(object sender, EventArgs e)
{
    this.MySecondTextBox.Text = this.MyFirstTextBox.Text;
}

ASP

<asp:TextBox ID="MyFirstTextBox" runat="server"></asp:TextBox>
<asp:CheckBox ID="MyCheckBox" runat="server" 
    oncheckedchanged="MyCheckBox_CheckedChanged" />
<asp:TextBox ID="MySecondTextBox" runat="server"></asp:TextBox>

客户端示例

C#

protected void Page_Load(object sender, EventArgs e)
{
    this.MyCheckBox.Attributes.Add("onClick", "CopyText()");
}  

ASP

<asp:TextBox ID="MyFirstTextBox" runat="server"></asp:TextBox>
<asp:CheckBox ID="MyCheckBox" runat="server" />
<asp:TextBox ID="MySecondTextBox" runat="server"></asp:TextBox>
<script type="text/javascript" language="javascript">
    function CopyText() {
        var txt2 = document.getElementById("<%= this.MySecondTextBox.ClientID %>");
        txt2.value = document.getElementById("<%= this.MyFirstTextBox.ClientID %>").value;
    }
</script>

【讨论】:

  • 好代码。只是出于好奇,您输入“这个”是有原因的。到处都是 - 我通常认为是可选的,除非您需要澄清歧义?
  • @rtpHarry - 当我快速完成garbage code samples 时,我倾向于使用this 来确保我的变量是正确的,等等。我不会将此代码部署到&lt;pre&gt; 以外的任何地方和&lt;code&gt; 阻止堆栈溢出帖子:)
  • @sivakumar:这两个样本都可以满足您的需求。我倾向于不为 StackOverflow 上的问题提供完整的编码解决方案,因为这不是 Give Me The Code 类型的网站。这是一个问答平台,上面的示例应该足以让您入门。如果我正在编写此代码,我可能会有某种地址控件,并且该控件将具有“克隆”或“复制”功能来执行此操作..
猜你喜欢
  • 2011-07-20
  • 1970-01-01
  • 2011-07-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多