将属性添加到asp生成的html元素 - 没有编译它的代码

时间:2012-12-05 14:52:59

标签: asp.net html

如果我收到的文件中有两个输入,这些输入与aspx“放在一起”

<tr>
    <td align="right">
        <asp:Label ID="Label1" runat="server" Text="User Name:" CssClass="login_label"></asp:Label></td>
    <td style="width: 200px">
        <asp:TextBox ID="txtUserName" runat="server" TabIndex="1" Width="200px"></asp:TextBox></td>
    <td style="width: 3px" align="left">
        <asp:RequiredFieldValidator ID="rfvUserName" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="txtUserName">Required</asp:RequiredFieldValidator></td>
</tr>
<tr>
    <td align="right">
        <asp:Label ID="Label2" runat="server" Text="Password:" CssClass="login_label"></asp:Label></td>
    <td style="width: 200px">
        <asp:TextBox ID="txtPassword" runat="server" TabIndex="2" Width="200px" TextMode="Password"></asp:TextBox></td>
    <td style="width: 3px">
        <asp:RequiredFieldValidator ID="rfvPassword" runat="server" ControlToValidate="txtPassword" ErrorMessage="Required">Required</asp:RequiredFieldValidator></td>
</tr>

如何在输入中添加autocapitalize="off"属性?每当我尝试在这段代码中添加一些东西 - 好吧,大多数时候 - 它只是完全破坏了。但我希望它可以在移动设备上使用。谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

在后面的代码中:

NameOfInput.Attributes.Add('autocapitalize','off')

就是如何将属性添加到服务器可见的html元素中。

javascript:要小心,这可能不适用于所有版本的IE。这应该在文档加载事件

document.getElementById('<%txtUserName.ClientID%>').setAttribute('autocapitalize','off');

jQuery:与上面相同的警告。 这也应该在$(docuemnt).ready()函数或load事件中。

$('#<%txtUserName.ClientID%>').attr('autocapitalize','off');

看到这个问题的原因是为什么你不能做你想做的事情:

Autocapitalize attribute on input element (used for iOS) breaks validation

最后一次编辑:

显然,从IOS开发文档中可以看到一个示例,您可以将该属性添加到表单元素中。

http://developer.apple.com/library/ios/#documentation/AppleApplications/Reference/SafariWebContent/DesigningForms/DesigningForms.html

所以也许你可以将它添加到form元素,它不是asp命名空间控件。验证器可能会哭,但您可能不会收到编译错误。