当有人成功注册我的某个网站时,我想显示一个弹出窗口。有数据正在写入外部数据库(这可以正常工作),所以我不确定哪些代码部分可以更改,哪些部分需要保留。如果你们中的任何人能够就此提出建议那就太棒了!当涉及到javascript时,有点像菜鸟!
提前致谢
<form name="signup" id="signup" action="http://creationonline.co.uk/signup.ashx" method="post" onsubmit="return validate_signup(this)">
<input type="hidden" name="addressbookid" value="1232079">
<!-- UserID - required field, do not remove -->
<input type="hidden" name="userid" value="81918">
<!-- ReturnURL - when the user hits submit, they'll get sent here -->
<input type="hidden" name="ReturnURL" value="">
<!-- Email - the user's email address -->
<table border="0" cellpadding="0">
<tr>
<td> Sign up
</td><td><input name="Email" type="text" placeholder="Email Address" size="29"></td>
<td align="left"><input type="Submit" name="Submit" class="su_btn" value=">"></td>
</tr>
</table>
</form>`
<!--
function validate_signup(frm) {
var emailAddress = frm.Email.value;
var errorString = '';
if (emailAddress == '' || emailAddress.indexOf('@') == -1) {
errorString = 'Please enter your email address';
}
var els = frm.getElementsByTagName('input');
for (var i = 0; i < els.length; i++)
{
if (els[i].className == 'text' || els[i].className == 'date' || els[i].className == 'number')
{
if (els[i].value == '')
errorString = 'Please complete all required fields.';
}
else if (els[i].className == 'radio')
{
var toCheck = document.getElementsByName(els[i].name);
var radioChecked = false;
for (var j = 0; j < toCheck.length; j++)
{
if (toCheck[j].name == els[i].name && toCheck[j].checked)
radioChecked = true;
}
if (!radioChecked)
errorString = 'Please complete all required fields.';
}
}
var isError = false;
if (errorString.length > 0)
isError = true;
if (isError)
alert(errorString);
return !isError;
}
//-->
答案 0 :(得分:-1)
我不确定我是否理解你的问题,但你可以从这段代码中删除所有的javascript,它将会工作正常。
所有灰色部分都在stackoverflow上看到,你可以删除。
要做一个popupm你需要改变你的动作来返回一些东西,你需要使用ajax来获得这个返回并发送弹出窗口而不重新加载页面。
我建议使用jquery ajax,它有点容易。
详情请见:http://api.jquery.com/jQuery.ajax/
要弹出,你可以使用简单的警报功能或使用jquery ui来获得更多的美容功能http://jqueryui.com/dialog/