gpt4 book ai didi

javascript - JQuery 追加 javascript

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:28:18 26 4
gpt4 key购买 nike

我尝试创建模块化应用程序,因此每个页面都包含自己的 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>');

但它不起作用 - 错误:未定义 ocl。可能是什么原因?如果我在每个网页中理解正确是一个包含所有 javascript 函数的对象 - 那么为什么不能向/从中添加或删除函数?

最佳答案

如果你想动态加载js文件,你可以尝试如下:

这是 HTML 页面代码:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
<script type="text/javascript">
function dynamicLoad() {
var s = document.createElement("script");
s.type="text/javascript";
s.language="javascript";
// Here goes your
s.src ="dynamic.js";
document.getElementsByTagName("head")[0].appendChild(s);
s.onreadystatechange = function() {
//window.alert(s.readyState);
}
s.onload= function() {
if (s.readyState == "complete") {
// You must create your DOM element after the js file has been loaded
var btn = document.createElement("input");
btn.type="button";
btn.value="Click Me";
btn.onclick = test;
document.getElementsByTagName("body")[0].appendChild(btn);
}
}
}
</script>
</head>
<body onload="dynamicLoad()">
<!-- a href="javascript:void(0)" onclick="test()">Click Me</a -->
</body>
</html>

这是js文件:

function test() {
window.alert("HELLO");
}

我在 IE 9 下测试了代码。仅供引用

关于javascript - JQuery 追加 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6441049/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com