2つのスクリプトと2つのjsonがあります。js(jquery)2番目の関数が初期化される前に2番目の関数に文字列の変数名を渡す
スクリプト
var myArr = [];
myArr .push (
{myOptStr:'<option value="'+myAjaxVar.valOne+'">'+myAjaxVar.valtwo+'</option>'},
{myOptStr:'<option value="'+myAjaxVar.valthree+'">'+myAjaxVar.valfour+'</option>'},
)
...
//load two.js via ajax as dataType: "script",
...
// Call one
myFun(myArr[0].myOptStr, "myJsonZero");
// Call two
myFun(myArr[1].myOptStr, "myJsonOne");
one.htmlスクリプトは
function myFun(myOpts, myJson) {
$.ajax({
url: myJson
...
success: function (data) {
...
$.each(data, function (abc, myAjaxVar) {
myOptrows += myOpts;
...
myAjaxVar
がまだ存在しないので、これはone.htmlにエラーが発生しtwo.js。
myOptStr
を文字列として渡すことができるので、ロードされたtwo.jsの文字列+ varとして解釈できますか?
すなわちtwo.jsに、myOpts
はあなたが関数にmyOptStr
プロパティを設定し、myFun
への最初のパラメータの代わりに文字列として関数を渡すことができ
myOptrows += '<option value="'+myAjaxVar.valOne+'">'+myAjaxVar.valtwo+'</option>'
*です:私はそれが何を意味するのか見当がつかない。 – trincot
'myOptStr'を関数に設定し、関数を文字列ではなく' myFun'の最初のパラメータとして渡すことができます。 – Titus