AJAX/javascript第二次无法通过
我有一个网站,jQuery将应用程序页面加载到作为索引页面一部分的div中 应用程序页面包含两个div。。1) 搜索表单,以及2)结果分区 搜索jQuery将结果加载到results div中。每个结果都有调用操作按钮,jQuery将这些按钮加载到results div中(不使用搜索栏)。用户完成动作调用表单,然后jQuery加载到results div a results页面 这是第一次,每次都很完美。但是,如果在结果页面加载后,用户再次从搜索栏单击搜索,我会进入页面,用户必须选择一个调用操作按钮,但会弹出一个javascript错误 这方面的具体错误是:AJAX/javascript第二次无法通过,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个网站,jQuery将应用程序页面加载到作为索引页面一部分的div中 应用程序页面包含两个div。。1) 搜索表单,以及2)结果分区 搜索jQuery将结果加载到results div中。每个结果都有调用操作按钮,jQuery将这些按钮加载到results div中(不使用搜索栏)。用户完成动作调用表单,然后jQuery加载到results div a results页面 这是第一次,每次都很完美。但是,如果在结果页面加载后,用户再次从搜索栏单击搜索,我会进入页面,用户必须选择一个调用操作
TypeError:$(“#cta电子邮件”)。验证不是一个函数。(在“$(“#cta电子邮件”).validate”中,“$(“#cta电子邮件”).validate”未定义)
然后,此错误使得无法单击任何其他基于javascript的内容。刷新页面可以修复它,但我无法找出是什么原因导致该脚本在第二次执行时出错
其他注释。。几乎每个jQuery加载的页面底部都有一个
。我已经研究了一些关于脚本不通过AJAX加载触发的东西,等等,但是我不确定这是否是问题的一部分,因为正如我所说的,我可以一次遍历整个函数,但是当循环时,就会出现错误
如果我缺少任何有助于解决此问题的信息,请告诉我。查看演示后,问题似乎是提交表单时会重新加载资源(jQuery和jQuery验证)。这破坏了jQuery验证 以下是网络请求(提交表单后): 您可以看到
results
重新加载资源
查看结果后
,我们看到以下有问题的行:
<script async defer src="//maps.googleapis.com/maps/api/js?key=AIzaSyB36Tx2kI7o_o4tPsdiVJBf_wyPEf6r2dc"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.14.0/jquery.validate.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.14.0/additional-methods.min.js"></script>
请显示您的代码如果我没有错,这个错误说明jQuery没有加载到页面上,请尝试将src/jQuery.min.js
放在首页的head标记中。因为$(“…”).validate
没有定义,似乎jQuery验证插件中断或根本没有第二次加载。控制台中是否显示任何其他错误,或者您是否有实时演示?必须加载@vietnguyen09 jQuery,因为它不会引发关于$
未定义的错误。@antonablov可以在Yes中找到实时演示!我刚刚看到CTA结果页面再次加载了所有头脚本/css,所以这肯定是问题所在。非常感谢。别担心!很乐意帮忙。