下面的代码只是通过 Ajax 提交一个表单,并将 addNewUser.php 脚本的结果附加到一个小的弹出窗口中。
//activate the signup submit button
$('#button_signup_submit').click(function() {
document.getElementById("popup_signup").style.display = "none";
document.getElementById("popup_signup_step_two").style.display = "block";
//submit the form info via ajax to addNewUser.php
$.ajax({
type: "POST",
url: "ajax/addNewUser.php",
data: {
username: document.forms["form_signup"]["username"].value,
password: document.forms["form_signup"]["password"].value
},
datatype: "html",
success: function(data){
var jqObj = jQuery(data);
$('#popup_signup_step_two').append(jqObj)
}
});
});
我可以得到上面的脚本将 ajaxed html 附加到原始网页中没有问题......但是当我去使用我的第二段代码时:
//activate the second signup page's return button
$('#return_to_signup_form_from_ajax_popup').click(function() {
alert("HEY");
//erase innerHtml of popup_signup_step_two
document.getElementById("popup_signup_step_two").innerHTML = "";
document.getElementById("popup_signup_step_two").style.display = "none";
//show the original signup form again, should contain user's original values
document.getElementById("popup_background").style.display = "block";
document.getElementById("popup_login").style.display = "block";
});
...这是一个与新添加的 html 一起使用的 jQuery 片段...没有任何反应。当用户忘记输入用户名或密码并通过 ajax 向他们提供此消息时,第二段代码适用:
<p>Go <span id="return_to_signup_form_from_ajax_popup">back</span> and enter a username and password.</p>
我认为这一切都与 DOM 有关吗?但最终我不知道。如果有人能指出我要寻找什么的方向,我将不胜感激。