asp.net访问控制的名称在另一个控件中,而不使用后面的代码

时间:2017-10-03 13:31:43

标签: c# asp.net

我知道这很简单&对我来说这么傻。 忘了需要做什么。

如何将txtNewPwd控件的name属性设置为txtConfPwd控件的data-bv-identical-field属性的属性。

我不想使用代码隐藏。试过#,=

  <asp:TextBox ID="txtNewPwd" runat="server" CssClass="form-control " placeholder="New Password"  TextMode="Password" required ClientIDMode="Static"
                    data-bv-stringLength="true" data-bv-stringLength-min="5" data-bv-stringLength-max="72" data-bv-stringLength-message="Enter 5-72 characters" MaxLength="72"                    
                    data-bv-notempty="true" data-bv-notempty-message="Enter New Password"></asp:TextBox>

<asp:TextBox ID="txtConfPwd" runat="server" CssClass="form-control " placeholder="Confirm Password"  TextMode="Password" required
                    data-bv-stringLength="true" data-bv-stringLength-min="5" data-bv-stringLength-max="72" data-bv-stringLength-message="Enter 5-72 characters" MaxLength="72"                    
                    data-bv-notempty="true" data-bv-notempty-message="Enter New Password"
                     data-bv-identical="true"
                data-bv-identical-field="<%# txtNewPwd.UniqueID %>"
                data-bv-identical-message="The password and its confirm are not the same." 
                    ></asp:TextBox>

1 个答案:

答案 0 :(得分:0)

如果您不想使用后面的代码,可以使用jQuery。

<script type="text/javascript">
    var name = $("#<%= txtNewPwd.ClientID %>").attr("name");
    $("#<%= txtConfPwd.ClientID %>").attr("data-bv-identical-field", name);
</script>

您也可以使用

<asp:TextBox ID="txtConfPwd" runat="server" data-bv-identical-field='<%# txtNewPwd.UniqueID %>'></asp:TextBox>

然而,这需要在后面的代码中调用DataBind();,并且您不希望这样。