1
我几乎得到了一个web项目完成了任务,但我已经击中了一个警告框的形式绊脚石,拒绝弹出时调用。这项任务是为用户创建一个Web表单,以向个人网站提交个人信息。一旦他们填入所有的文本框并点击一个按钮进行注册,它将在后面的代码中调用函数registerMe,如下所示。一旦他们这样做了,这个想法是,该功能将首先检查以确保用户尚未在网站上注册,然后它会将文本框中的所有值填入Session对象(使用Candidate.curCandidate作为包装)。这个会话对象将被添加到应用程序状态数据中以保存它。这个alertbox为什么不显示?
现在,这是奇怪的事情。在下面的if语句中,如果语句为true,则所有值将根据需要保存到会话中,然后保存应用程序状态数据,但不会显示警告框。但是,如果if语句为false,则会显示Alertbox。所以,我猜测,读写所有这些值会干扰Alertbox的激活,但我不知道为什么。
protected void registerMe(object sender, EventArgs e)
{
String successText;
if (Candidate.curCandidate.appProperty == false)
{
Candidate.curCandidate.ssNumberProperty = socSec.Text;
Candidate.curCandidate.emailAddressProperty = email.Text;
Candidate.curCandidate.userIDProperty = userName0.Text;
Candidate.curCandidate.passwordProperty = password0.Text;
Candidate.curCandidate.dateOfBirthProperty = dateBirth.Text;
Candidate.curCandidate.firstNameProperty = fName0.Text;
Candidate.curCandidate.lastNameProperty = lName0.Text;
Candidate.curCandidate.streetAddressProperty = strAdd0.Text;
Candidate.curCandidate.cityProperty = city0.Text;
Candidate.curCandidate.stateProperty = state0.Text;
Candidate.curCandidate.positionProperty = jobs0.SelectedIndex;
Candidate.curCandidate.applicationStatusProperty = appStatus0.Text;
Candidate.curCandidate.appProperty = true;
Application[Candidate.curCandidate.ssNumberProperty]=Candidate.curCandidate;
successText = "Thank you. Candidate Information Added Successfully.\n" +
"E-Mail Address You Entered will be used to notify you of any\n" +
"updates for the position you applied for.";
ClientScript.RegisterStartupScript(this.GetType(), "myalert",
"alert('" + successText + "');", true);
}
else
{
successText = "Registration unsuccessful.";
ClientScript.RegisterStartupScript(this.GetType(), "myalert",
"alert('" + successText + "');", true);
}
}
啊,弗里克。这工作。我可以发誓我以前用这种方式用alertboxes来使用换行符,但是啊。谢谢。 –
如果消息字符串是在客户端创建的,它会起作用。但由于它是在服务器端创建的,因此您需要将其双重转义,否则,消息字符串将位于无效的新行上。 –