1) メソッドにパラメータがない場合、onclick = メソッド名を使用して値を直接割り当てることができます
window.onload = function() {
$('btnTest').onclick = test;
}
function test() {
warning( val);
}
2) メソッドにパラメータがある場合、onclick = メソッド名 (パラメータ) を使用するのは間違いです。メソッド名の前に function() を追加する必要があります。
window.onload = function() {
$('btnTest').onclick = function( ) { test(1) };
}
function test(val) {
alert(val);
}