0

ボタンである引数を使用して、オブジェクトをインスタンス化します。インスタンスのボタンがクリックされると、関数が実行されるはずですが、実行されません。コードの完全なバージョンでは、Chrome はコンソールに次のメッセージを表示します:「Uncaught TypeError: Cannot read property 'onclick' of undefined」

HTML:

<textarea id='txt' readonly rows='5' cols='40'></textarea>
<button id='btn' type='button'>click</button>

JS:

var btn = document.getElementById('btn');
var txt = document.getElementById('txt');
var foo = new Foo(btn);

function Foo(btn) {
    this.button = btn;
}

Foo.prototype.buy = function() {
    txt.value = 'Foo Bar';
};

Foo.button.onclick = function() {
    foo.buy();
};

フィドル

4

1 に答える 1