0

部分ビューを取得するために ajax を多用して MVC3 を使用しています。部分ビューに JavaScript が含まれている場合、スナップショットに示すように、新しい js ファイルとして追加されます。

ajax 呼び出しの動的 JS ファイル

js関数がある場合:

function checkValue(){
   //do work
}

ajax呼び出しで、この関数を含む新しい動的JSファイルが追加され、古いものと競合します。

myfile.js には以下が含まれていました。

function checkValue(){
   //do work
}

1.js(動的ファイル)にもそれが含まれます

function checkValue(){
   //do work
}

そのため、古いファイルに存在するために呼び出すと、既に存在する古いファイルが呼び出されますfunction。新しいJavaScriptが古いものを置き換えるなど、この状況を解決する方法。

ありがとう

4

1 に答える 1

2

何かが定義されているかどうかを確認し、定義されていない場合にのみ再定義できます。

var checkValue = checkValue || function () {
     //do work
};

関数を名前で定義するのではなく、定義を相互にオーバーライドする場合は、グローバル オブジェクトで毎回定義します。

window.checkValue = function () {
     //do work
};
于 2013-01-10T10:00:09.453 に答える