そもそも、なぜアプリケーション ロジックを DOM に保存するのでしょうか? 関数を JavaScript のバッキング ビジネス ロジックに格納してみませんか?
これは、保守性の問題であることがわかります。これを行わないでください。代わりに、関数をコードに格納し、プレゼンテーションのロジックを実行時に発生するものから分離してください。
最も簡単な方法は、フォームを分類し、それに応じて関数を実行することです。より良いアプローチは、MV* パターンのようなものを使用することですが、分岐しないようにしましょう。これは、データ属性を保存せずに考えられる最も簡単なソリューションです。これでも問題を適切に分離することはできませんが、データ属性よりもはるかに単純です。
...
jQuery を使用した JavaScript:
/now we select by class, and not just any form
$('.successForm').on('submit', function(e){
e.preventDefault();
test();
});
function test(){
alert('run');
};
そうは言っても、それは可能です。eval($(this).data("success"))-ただし、これは行わないでください。このビットは完全を期すためにここにあるだけです