繁体   English   中英

我的jQuery文档准备功能无法识别外部js文件功能?

[英]My jquery doc ready function doesn't recognize an external js file function?

当我将它们与HTML内容放在同一页面上时,我创建了几个可以正常工作的函数,但是由于开始有太多的函数,我决定将它们移至.js文件。 现在无法调用初始函数。

IE8表示该功能不存在。 我已确认链接正确,并确认正在加载js文件。 我什至将初始化的触发事件链接到了一个按钮(带有loadFile类),因此我可以手动触发它以确保它不是加载时间。 我在这里做错了吗?

这是指向外部脚本和文档的链接:

//This is how we must reference external files in our configuration, 
//but this is correct, and I am certain this is not the problem.
<script src="<#=getManagedWebFileRelativePath('docAttachmentIE8.js') #>"></script>

<script type="text/javascript">
    $(document).ready(function(){          
        $('.loadFile').click(function() {                   
            initializeDocAttachments(); 
        });
    }); // END DOC Ready           
</script>

这是我的js文件的摘录:

function initializeDocAttachments() {
    //for IE8 load this form
    var docFormHTML = "<form method='POST' id='frmUploadDoc' enctype='multipart/form-data' action=''>\
                       <input type='file' name='data' onchange='handleFileSelect(this);' id='filesInput'>&nbsp;&nbsp; Upload a file</form>";
    document.getElementById('docAttachmentControl').innerHTML = docFormHTML;               
    docLoadDocs();
}   

当我将代码放入此小提琴中时,您所拥有的才有意义并可以正常工作: http : //jsfiddle.net/3PtuH/1

您得到的确切错误消息是什么? IE8是否说initializeDocAttachments()函数不存在? 是否可能说内部docLoadDocs()函数可能不存在?

如果没有看到页面其余部分的构造方式的完整上下文,将很难完全诊断出来。

我要检查的事情是确保在上面的任何代码之前都将您称为jquery.js,否则它将不会设置您所关注的任何事件。 您是否尝试过使用Firebug并检查控制台以查看其是否报告了任何其他JavaScript错误。

您说您的配置需要您以一种不寻常的方式调用外部JS文件-我假设文件以某种方式被解析,然后将其转换为普通链接? 如果是这样,那么之后的HTML是什么样的?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM