手机版
你好,游客 登录 注册
背景:
阅读新闻

在Yii2中使用Pjax导致Yii2内联脚本载入失败的问题

[日期:2016-03-05] 来源:Linux社区  作者:aoyo [字体: ]

当我用defunkt/jquery-pjax载入Yii2的ActiveForm时发生一个错误,正常情况下是

ActiveForm的两个js应该先载入,而实际情况是

typeError:JQuery(...).yiiActiveForm is not a function。

在github的issues对这个问题已经讨论并得到了解决。

Pjax首先通过html()执行内联的<script>,然后才通过executeScriptTags()执行带着src的<script>,所以导致找不到yiiActiveForm。Pjax作者拒绝使用JQuery.getScript()解决这个问题,因为安全原因函数使用eval不符合CSP (Content Security Policy)

Yii2的一个参与者重写了Pjax,使Pjax可以在Yii2良好的工作hiqdev/jquery-pjax

亲测没问题。

本文永久更新链接地址http://www.linuxidc.com/Linux/2016-03/128949.htm

linux
相关资讯       Yii2 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款