2009-03-27 11 views
1

AJAX呼び出しを使用してページの一部を読み込んでいますが、スクリプト関数が定義されている可能性があります。異なるイベントがロードされているコントロールに添付されています。問題は、これらのイベントがトリガされたときに、関数が見つからない/定義されていないことを示す「オブジェクトが見つかりません」というエラーが表示されることです。 Firebugを使用している間、私はその機能が定義され利用可能であることがわかります。どうすればブラウザがそれぞれの機能を見つけることができるのですか?AJAX +動的にページにJavaスクリプト関数を追加する

私が試みたが、いずれかの私はいくつかのことをしないのですかいずれかの私は

 Page 
      --->Partial View A 
        ----->Partial View B 

今すぐページのロードAjaxはAjaxをCalls.Bothとされ、さらに負荷部分Bを呼び出して、部分Aをやっているものを、ここでされて動作していません部分A & Bには、論理的にはマスターページではなく関連付けられているJavaスクリプト機能がほとんど含まれていません。 「オブジェクトが見つかりません」という機能が実行できない場合を除き、ページは正常に読み込まれます。

+0

フレームワーク/ライブラリを使用しているのですか、または単純なjavascriptを使用していますか? – andi

+0

私はJQueryを使用していますが、ここではこれはASP.NET MVC内の通常のJavaスクリプトです – Gripsoft

答えて

0

フレームワークまたはライブラリを使用している場合は、その応答に存在するスクリプトを評価するためにパラメータを設定する必要があります。 ajaxリクエスト。それはusualyはevalScriptsそれが一つの場所にコードを維持し、このような状況を避けるために簡単だように、あなたはまた、イベントをトリガするために、要求のコールバック(成功/エラー)を使用することができます

evalScripts:true 

と呼ばれています。

あなたは、プレーンjavasciprtとXmlHttpObjectを使用している場合は、手動で応答内のすべてのスクリプトタグを見つける必要があり、その後のeval()それら。

3

あなたはこの構文を使用して関数を定義する必要があります。

myFunction = function(foo) {} 

ないこの構文を

function myFunction(foo) {} 

2番目の形式は

(おそらく何が起こっているのである)ときにeval() 'dは動作しません。
関連する問題