プロが教えるわが家の防犯対策術!

表題のままですが、Ajaxコールバックの中から、外部の変数(オグジェクト)を操作するにはどうたら良いですか?

// グローバルオブジェクト定義
function MyClass(){
this.myValue = 'foo';
}
var myObj = new MyClass();

$.ajax({
url : '/hoge';
// 以降オプション省略
success : function(){
// ここで、myObj.myValue に 'hoge' を代入したいです
}
});

コールバックの中で、this.myObj.myValue = 'hoge'; とはできないですよね?

よろしくお願いします。

A 回答 (2件)

普通に、


myObj.myValue = 'hoge' ;

ではだめなのです?
    • good
    • 0
この回答へのお礼

nekomikekamoさま、ありがとうございます。
テストしてみたら、見事に読めました! グローバルに作成した変数は、thisをつけなければコールバック中から可視になるのですね。。

ありがとうございました。スッキリしました。

お礼日時:2013/07/10 21:43

myObjの中に、引数に値を指定して呼び出すとmyValueを変更してくれるパブリックなメンバ関数を作って、代入したい場所で、その関数を呼び出すしか無いと思います。

    • good
    • 0
この回答へのお礼

回答ありがとうございました。参考になりました

お礼日時:2013/07/10 21:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!