Asp.net 无法将值属性添加到输入类型=";提交;

Asp.net 无法将值属性添加到输入类型=";提交;,asp.net,forms,umbraco,Asp.net,Forms,Umbraco,我正在创建一个自定义用户控件,用于呈现用于从Umbraco站点发送电子邮件的表单。一切似乎都很顺利。但有一个问题现在让我很恼火 当页面呈现时,按钮不显示任何文本。 下面可以看到.ascx文件中负责呈现的代码: <asp:Button ID="btnSubmit" runat="server" onclick="BtnSubmitClick" CssClass="full-width" /> <script runat="server"> private void

我正在创建一个自定义用户控件,用于呈现用于从Umbraco站点发送电子邮件的表单。一切似乎都很顺利。但有一个问题现在让我很恼火

当页面呈现时,
按钮不显示任何文本。 下面可以看到.ascx文件中负责呈现
的代码:

<asp:Button ID="btnSubmit" runat="server" onclick="BtnSubmitClick" CssClass="full-width" />

<script runat="server">
    private void Page_Load()
    {
        btnSubmit.Attributes.Add("value", StringSendText);
    }
</script>
我知道StringSendText返回输入的文本,但无论我做什么,属性值都显示为空。当我将StringSendText插入的
text=”“
属性时,我可以看到文本字符串显示在源代码中,但按钮上没有显示任何内容

我曾尝试禁用javascript和css文件,但它给出了完全相同的结果。按钮上的文本仅在操作源代码(来自Firebug或Chrome)并手动添加
value=“Send”
属性时显示

将文本添加为固定字符串时,它甚至不会显示:

btnSubmit.Attributes.Add("value", "Text 1");
btnSubmit.Attributes.Add("text", "Text 2");
查看源代码时,value属性仅显示为
value
,而我可以在源代码中看到属性
text=“text 2”
,但仍然没有显示源代码的文本

我想我遗漏了一些非常琐碎的东西,但我似乎找不到逻辑:/


谢谢你抽出时间

我想代码是这样的

Button.Attributes.Add("onclick", "javascript:return alert(value);");

您的代码中缺少
javascript:return alert

您不使用.Text属性(即btnSubmit.Text=“Text 1”)的任何原因?告诉您我遗漏了一些琐碎的内容。。。我想将这些属性与其他自定义属性一起添加,但没有执行btnSubmit.attributes.add(“text”、“text”);而执行你的建议却很有魅力。哇!但是谢谢:)不用担心-仅供参考,它不能像您那样工作的原因是.Text值会覆盖您为该值设置的任何内容-即使您没有明确设置它。谢谢。很高兴知道这一点——特别是考虑到这是我第一次为.NET创建用户控件:)
Button.Attributes.Add("onclick", "javascript:return alert(value);");