Javascript&;JQuery:为什么我的AJAX锚只能工作一次? 我来自C、C++和java编程背景,现在我正在为我正在处理的个人项目而用JavaScript和jQuery润湿。
我已经为我的项目创建了主页,该主页应该是“登录/创建帐户/发送密码重置代码/重新发送激活代码”页面。感兴趣的因素包括:Javascript&;JQuery:为什么我的AJAX锚只能工作一次? 我来自C、C++和java编程背景,现在我正在为我正在处理的个人项目而用JavaScript和jQuery润湿。,javascript,jquery,dom,Javascript,Jquery,Dom,我已经为我的项目创建了主页,该主页应该是“登录/创建帐户/发送密码重置代码/重新发送激活代码”页面。感兴趣的因素包括: 包含当前窗体的div 包含指向其他窗体的锚的div 包含前两个div的div 页面最初以登录表单及其关联的锚定div开始。单击锚定div中的一个锚定(例如“创建帐户”锚定),调用JQuery replaceWith()方法,用请求的表单div及其关联的锚定div替换当前表单div和锚定div 代码是有效的。。。但每次单击锚点时仅一次。为什么会这样?在使用JQuery元素之前
- 包含当前窗体的div
- 包含指向其他窗体的锚的div
- 包含前两个div的div
.click()
.live('click',…)
绑定到任意元素,这是使用jQuery创建元素并向其附加事件时所需的
因此,我将更改这些类型的函数定义:
$(".ajaxLinkSendResetCode").click(function()
其中:
$(".ajaxLinkSendResetCode").live('click', function()
如果要将处理程序附加到的元素被新元素替换,则基本事件处理程序附加方法在其元素被替换时将被“覆盖”。要解决此问题,请使用附加事件。这将确保处理程序应用于与选择器匹配的任何元素,即使在添加/删除元素时也是如此。单击事件绑定到您删除的对象,而不是新对象
查看处理程序,而不是使用.click()绑定。Um,
click
是bind('click'
)的快捷方式。您的示例完全相同。您的意思是live
?
$(".ajaxLinkSendResetCode").live('click', function()