2011-12-16 6 views
2

javascript ...CoffeeScriptのフォーム

math = (form) -> 
    input1 = form.input1.value 
    input2 = form.input2.value 
    document.getElementById("result").innerHTML = parseInt(input1, 10) + parseInt(input2, 10) 

ただし、ページには何も出力されません。ボタンをクリックすると、コンソールで「数学」が定義されていないことがわかります(HTMLコードの4行目)。

ここで何が問題なのでしょうか。

+0

など、優れているどのようなコンパイルされたバージョンは、のように見えるのでしょうか? –

答えて

4
window.math = (form) -> 
    input1 = form.input1.value 
    input2 = form.input2.value 
    document.getElementById("result").innerHTML = parseInt(input1, 10) + parseInt(input2, 10) 

Coffeescriptには固有のスコープがあります。 これは、デフォルトでラッパーのローカル変数を数えたので、残りのウェブページからwindow.mathを明示的に定義してアクセスする必要があります。

それがネイティブまたはjQueryのも天気をあなたは、JavaScriptのセレクタエンジンのいくつかの並べ替えを使用しているときのCoffeeScriptは本当に