【发布时间】:2011-09-20 10:15:58
【问题描述】:
我尝试创建模块化应用程序,因此每个页面都包含自己的 html 和 javascript 代码。 我应该像这样动态加载所有代码:
var s = document.createElement("script");
s.type = "text/javascript";
s.src='function oncl() { alert("click");}';
$(".selector").append(s);
$( ".selector" ).
append('<input type="button" onclick="ocl();" />
<form action="../test/test_upload4.php"
method="POST" enctype="multipart/form-data" name="getnamefile">
<input type="file" id="uploadfile" name="uploadfile">
<input type="submit" id="Submit" name= "Submit" value="Upload"></form>');
但它不起作用 -Error: ocl is not defined。可能是什么原因?如果我理解每个网页中正确的是一个包含所有 javascript 函数的对象 - 那么为什么不能向/从添加或删除函数呢?
【问题讨论】:
-
你为什么需要这种hackery?你在 html 中使用 jQuery 和 onclick 吗?
-
这是一个可怕的想法。你为什么要这样做?
-
我正在开发的 Web 应用程序很复杂。它就像 CRM。它包含近 100 页。所以我需要分离到独立的页面 - 并行工作。如果每个模块都有自己的 javascript 和 html 似乎很方便
-
您可以在使用 jquery click 或 bind 方法附加标记后设置事件处理程序。
标签: javascript jquery function append