簡體   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