javascript - 为什么 Javascript 不能在 digital.Dialog 弹出窗口中工作?

标签 javascript ajax dojo popup digit

我正在使用dojo的dijit/Dialog模块。 Ajax 弹出窗口工作正常,但是当我在该弹出窗口中包含任何无法正常工作的 javascript 时,请查看下面的代码。

<script src="<?php echo $this->basePath()?>/js/dojo_lib/dojo/dojo.js" data-dojo-config="isDebug:1, async:1"></script>
<script>
    require(["dijit/Dialog"]);
</script>
<a title="Create a New Account" class="registration" href="javascript:void(0);" onclick="dijit.byId('user_registration').show();">Registration</a>
<div class="dijitHidden">
    <!-- dialog that gets its content via ajax, uses loading message -->
    <div data-dojo-type="dijit.Dialog" style="width:600px;" data-dojo-props="title:'Register',href:'/account/register',loadingMessage:'Loading form...'" id="user_registration"></div>
</div>

以上代码用于显示弹出窗口。

弹出页面是这样的

<div>
Register
</div>
<script>
alert('Hello');
</script>

此警报在该弹出窗口中不起作用。 请帮忙

最佳答案

tik27 可能有最好的一般答案(它解释了为什么它不能开箱即用)。

如果您不想自己进行评估,Dojo 还有一个名为 dojox/widget/DialogSimple 的模块/小部件(以及 dojox/widget/Dialog )并且它有一个属性executeScripts。如果启用它,它将评估该页面上的所有脚本。

因此,如果您不想自己进行脚本评估,请尝试使用 this widget .

关于javascript - 为什么 Javascript 不能在 digital.Dialog 弹出窗口中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16944129/

相关文章:

javascript - 使用raphael.js可以实现这种像素化效果吗?

javascript - Firebase:在成功回调中使用新创建的 key

javascript - 为什么我无法从单选按钮获取值?

javascript - Jquery ajax 在 HTTP 上调用延迟响应

javascript - 如何在创建 dojo AMD 模块后调用按钮单击事件

java - 我可以使用什么来为在 tomcat 上运行的 java servlet 中的每个 session 实现后台进程?

CSS 样式化 dojo 中的提示工具提示

javascript 正则表达式匹配有效但替换无效

javascript - 如何在 Javascript 函数中添加延迟

javascript - 使用 jQuery 循环对象并输入某些索引