1

monitoring()このfiddleのように呼び出される関数があります。ここでの私の質問は、その関数を呼び出したい場合、単純にこれを行うことができますか?

$('#status_table #monitor_'+rowID).change(monitoring(rowID));

私の論理は、チェックボックスのステータス(#monitor_'+rowIDチェックボックスIDです)が変更されると、関数が呼び出されるということです。

関数が呼び出されているかどうかを確認したいので、次のように追加します。

$('#test').append(fbType + fbNum);

しかし、div #test の fbType と fbNum には何も表示されません。誰かが関数を呼び出す方法や、そのコード/ロジックの間違いを修正する方法を教えてもらえますか?

4

4 に答える 4

2

現在のコードはcall関数monitoringを実行し、その戻り値を event handler としてバインドしますが、これはおそらく必要なものではありません。

代わりに次のようにすることができます:

$('#status_table #monitor_'+rowID).change(function() {
    monitoring(rowID);
});
于 2013-05-02T02:20:47.650 に答える
0

ああ、クロージャの力:

$('#status_table #monitor_'+rowID).change(function() { monitoring(rowID) });

実際にどこかで行 ID を渡す必要があるため、これよりも少し多くのことが必要になります。addTextあなたのフィドルを見ると、一見、rowIDを計算するfunction 内にこのスニペットを入れたいように見えました。

修正されたフィドル (rowID を使用): http://jsfiddle.net/EVW4S/

このコードには他にも問題があるようです... デバッグに役立つヒント: (コンテンツを使用または変更するconsole.debugよりも) 便利ですalert()

于 2013-05-02T02:21:37.077 に答える
0

次に、機能をトリガーするボタンをどこかに作成します。機能をより適切に制御することもできます。

于 2013-05-08T02:42:09.420 に答える