在编辑模式下,在gridview的密码列中显示密码字符*
我有一个网络表单gridview。其中一列是密码。我想允许用户更改密码。没有什么问题在编辑模式下,在gridview的密码列中显示密码字符*,gridview,passwordbox,editmode,Gridview,Passwordbox,Editmode,我有一个网络表单gridview。其中一列是密码。我想允许用户更改密码。没有什么问题 在编辑模板中,我提到了密码列TextMode作为密码。因此,当我点击编辑按钮时,它显示为空白。 因此,当我单击编辑模式时,密码列应显示密码掩码字符“*”,如果用户更改密码,则应在数据库中更新密码。我正在使用SHA1加密密码,因此我认为我可以从数据库中检索密码值,并将其保留在frontpage上不会有任何安全性问题。最后我用jQuery找到了这个问题的解决方案。 可能对某人有用。 <as
在编辑模板中,我提到了密码列TextMode作为密码。因此,当我点击编辑按钮时,它显示为空白。
因此,当我单击编辑模式时,密码列应显示密码掩码字符“*”,如果用户更改密码,则应在数据库中更新密码。
我正在使用SHA1加密密码,因此我认为我可以从数据库中检索密码值,并将其保留在frontpage上不会有任何安全性问题。最后我用jQuery找到了这个问题的解决方案。
可能对某人有用。
<asp:TemplateField HeaderText="Password">
<EditItemTemplate>
<asp:TextBox ID="txtPassword" runat="server" Width="98%"
TextMode="Password" MaxLength="50" Text='<%# Bind("UserPassword") %>' CssClass="blankPassword"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvPassword" runat="server" ErrorMessage="Required"
Display="Dynamic" ControlToValidate="txtPassword" ValidationGroup="Saving" CssClass="RequiredValidationMessage"></asp:RequiredFieldValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblPassword" runat="server" Text='*****'></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtNewPassword" runat="server" Text='<%# Bind("UserPassword") %>' Width="95%"
TextMode="Password" MaxLength="50"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvNewPassword" runat="server" ErrorMessage="Required"
Display="Dynamic" ControlToValidate="txtNewPassword" ValidationGroup="Adding" CssClass="RequiredValidationMessage"></asp:RequiredFieldValidator>
</FooterTemplate>
<ItemStyle Width="30%" />
</asp:TemplateField>
<script type="text/javascript" language="javascript" charset="utf-8">
$(document).ready(function() {
$(function() {
$("input[id$='txtPassword']").live("click", function() {
$tb = $(this);
$("#PasswordEdited").val("true");
$tb.val("");
})
});
$(function() {
$(".blankPassword").each(function() {
$tb = $(this);
$tb.val('*****');
$tb.removeClass("blankPassword");
})
});
});
</script>
$(文档).ready(函数(){
$(函数(){
$(“输入[id$='txtPassword'])。live(“单击”,函数(){
$tb=$(此项);
$(“#PasswordEdited”).val(“true”);
$tb.val(“”);
})
});
$(函数(){
$(“.blankPassword”).each(函数(){
$tb=$(此项);
$tb.val(“*****”);
$tb.removeClass(“空白密码”);
})
});
});
编辑项模板内的文本框。然后尝试向文本框添加value属性,如下所示
<asp:TextBox ID="txtNewPassword" runat="server" Text='<%# Bind("UserPassword") %>' Value='<%# Bind("UserPassword") %>' Width="95%" TextMode="Password" MaxLength="50"></asp:TextBox>
希望这项工作