クラス「liveVariable」を使用して、コールバックを各入力(テキスト型)にリンクしたい:
$(".liveParameter").keyup(function(){
var callBackString= 'skp:change-'+$(this).attr('id')+'@'+$(this).attr('value');
window.location = callBackString;
});
ただし、これにより奇妙なエラーが発生します。渡される値は、入力フィールドの初期値です (イベントが発生するたびに)。
これが機能しない理由がわかりません。クロージャーがあるとは思いません。呼び出された関数でローカル変数 callBackString が作成されます。それで、毎回作成する必要がありますか?
これをエレガントな方法で解決するにはどうすればよいですか?(入力フィールドごとに呼び出しを作成したくありません。多くのライブパラメーターがあるためです..)