2011-11-01 4 views
12

は、私は次があります。jQuery関数をどのようにして呼び出すことができますか?

$('#EID').change(function() { 
       $.ajax({ 
        url: "/Administration/stats", 
        data: { DataSource: $('#DataSource').val(), 
          EID: $('#EID').val() 
        }, 
        success: function (data) { 
         $('#TID').html(data); 
        } 
       }); 
      }); 

これは良い作品が、私は他の回で機能を()を呼び出すことができるようにしたいだけでなく、ときEIDの変更。私はどのように関数コードを別のブロックに名前で引き出し、その関数名を呼び出すことができるかを誰かに教えてもらえますか?あなたは機能ではなく、その戻り値を渡したいので、あなたが関数名の後()を追加しないなければならないこと

答えて

31
function doSomething() { 
    $.ajax(...); 
} 

$('#EID').change(doSomething); 

ノアを。あなたが関数にいくつかのパラメータを渡したい場合、あなたはこのようにそれを

にしてください:

function doSomething(someParam) { 
    $.ajax(...); 
} 

$('#EID').change(function() { 
    doSomething(whateverSomeParamShouldBe); 
}); 
+1

どうもありがとうございました。これは私が必要とするものです。パラメータ$( '#EID').val()を渡したければ、パラメータを宣言して関数の内部でどのように使用するのですか? –

+0

@Samantha:グローバルシンボルを作成し、Webブラウザのグローバルスペースがすでに十分に混雑しているため、これは通常、すべての要素(スコープ関数と呼ばれます)を含む関数でラップされていることをお勧めします。 2つの例:http://pastie.org/2792207 –

+0

@Samantha:* "パラメータ$( '#EID')。val()を渡したければ、パラメータを宣言してから、関数? "* ThiefMasterが彼の答えの後半に示す方法とまったく同じです:http://pastie.org/2792210 –

関連する問題