我被分配去做这个任务。我的页面包含两个文本框(用于新密码和确认)和一个用于保存数据的按钮。在按钮单击事件中,我首先验证两个文本框是否为空或者是否存在不匹配,或者输入的值是否遵循规则。用户在两个文本框中输入正确的密码并单击保存后,弹出窗口将显示“确认密码更改”消息。只有在单击“确定”后,数据才会保存到数据库中。当用户单击取消时,不保存数据并返回false。
我在这里编写代码:
protected void btnChangePassword_Click(object sender, EventArgs e)
{
if (txtNewPassword.Text.Trim().Length <= 0)
{
}
if (txtConfirmNewPassword.Text.Trim().Length <= 0)
{
}
if (txtNewPassword.Text.Trim() != txtConfirmNewPassword.Text.Trim())
{
}
else
{
//correct format and save the values.here i want to see a popup msg first and then click ok save values,otherwise exit..
}
}
我该怎么做?
答案 0 :(得分:0)
除非您在用户填写新密码字段后添加中间步骤,否则无法单独通过服务器代码执行您要执行的操作。
最好的方法是使用javascript或jQuery验证客户端上的密码字段,如果txtNewPassword == txtConfirmNewPassword则显示确认对话框,然后调用服务器保存更改。
答案 1 :(得分:0)
这是用于客户端验证的java脚本中的示例代码,用于调用onclientclick事件中的函数
function validate() {
if (document.getElementById("<%=txtNewPassword.ClientID%>").value == 0) {
alert("Please Enter New Password.");
document.getElementById("<%=txtNewPassword.ClientID%>").focus();
return false;
}
if (document.getElementById("<%=txtConfirmPassword.ClientID%>").value == 0) {
alert("Please Enter Confirm Password.");
document.getElementById("<%=txtConfirmPassword.ClientID%>").focus();
return false;
}
if (document.getElementById("<%=txtNewPassword.ClientID%>").value != document.getElementById("<%=txtConfirmPassword.ClientID%>").value) {
alert("Provided Confirmation Password is wrong.");
document.getElementById("<%=txtConfirmPassword.ClientID%>").focus();
return false;
}
alert("do you want to save password");
}
答案 2 :(得分:0)
您可以使用fancybox弹出您想要的任何ifram或页面
您需要创建confirm.aspx以确认密码更改
从后面的代码打开confirm.aspx使用此代码
ClientScript.RegisterStartupScript(Page.GetType(), "key", "window.onload=function(){parent.location.href = 'confirm.aspx';}", true);