関数呼び出しの問題を正確に把握するのに苦労しています。Iv “e 使用する前に呼び出しを定義したり、jqueryのスクリプト参照タグを何よりも配置したりするなど、さまざまなことを試みました。 何も機能していないようです。

test = function() {}; test(); 

私のコードは次のとおりです:

<link rel="stylesheet" type="text/css" href="/sites/SPAPPS02/creditmemo/SiteAssets/Credit%20Memo.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script type="text/javascript"> $(document).ready(function() { ExecuteOrDelayUntilScriptLoaded(OnLoad, "sp.js"); function OnLoad() { $("#calc").click(function() { test(); }); } }); </script> 

私の機能 別のファイルにあります。

function test() { console.log("Success!"); } 

完全なエラーメッセージは次のとおりです。

Home.aspx:889 Uncaught ReferenceError: test is not defined at HTMLInputElement.<anonymous> (Home.aspx:889) at HTMLInputElement.dispatch (jquery.min.js:2) at HTMLInputElement.v.handle (jquery.min.js:2) 

回答

これは実行順序の問題のようです。 テスト関数を含むファイルは、テスト関数を呼び出すインラインJSの前に参照する必要があります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です